Tinyauth安装与配置指南
1. 项目基础介绍
Tinyauth是一个简单认证中间件,可以为所有Docker应用程序添加基本的用户名/密码登录或OAuth认证(支持Google、GitHub以及任何通用OAuth提供者)。该项目主要面向家庭实验室使用,并不推荐用于生产环境。Tinyauth是为traefik设计的,但也可以扩展以兼容其他反向代理,如Caddy和Nginx。
主要编程语言:Go
2. 关键技术和框架
- Go:项目的主要开发语言,用于实现认证中间件的核心逻辑。
- Docker:容器技术,用于打包和运行应用。
- traefik:一个开源的反向代理和负载均衡器,可以与Tinyauth配合使用。
- OAuth:一种开放标准,允许用户提供一个token而不是用户名和密码来访问他们存储在特定服务提供者的数据。
3. 安装和配置准备工作
在开始安装之前,请确保您的系统满足以下要求:
- 安装有Docker环境。
- 如果使用traefik,请确保traefik已经安装和配置妥当。
- 准备一个文本编辑器用于编辑配置文件。
安装步骤
步骤1:克隆项目仓库
打开命令行工具,执行以下命令来克隆Tinyauth的GitHub仓库到本地:
git clone https://github.com/steveiliop56/tinyauth.git
步骤2:进入项目目录
克隆完成后,进入项目目录:
cd tinyauth
步骤3:创建.env文件
在项目目录中创建一个.env
文件,用于存储敏感配置信息。你可以从.env.example
文件复制内容作为起点:
cp .env.example .env
然后编辑.env
文件,设置你的配置信息,如数据库连接字符串、OAuth密钥等。
步骤4:构建Docker镜像
在项目目录中,使用以下命令构建Tinyauth的Docker镜像:
docker build -t tinyauth .
步骤5:运行Docker容器
构建完成后,使用以下命令运行Tinyauth的Docker容器:
docker run -d --name tinyauth -p 8080:8080 tinyauth
这会启动一个Docker容器,并且将容器的8080端口映射到宿主机的8080端口。
步骤6:配置traefik
如果你使用traefik作为反向代理,需要添加一个配置文件来设置Tinyauth作为中间件。以下是一个基本的traefik配置示例:
entryPoints:
web:
address: ":80"
http:
middlewares:
tinyauth:
plugin:
tinyauth:
secret: "your_secret"
users:
- user: "admin"
password: "admin_password"
routers:
- rule: "Host(`your_domain`)"
service: "tinyauth_service"
middlewares:
- "tinyauth"
确保替换your_secret
、admin
、admin_password
和your_domain
为你的实际配置值。
步骤7:重启traefik
配置更改后,重启traefik以应用新的设置:
docker restart your_traefik_container_id
现在,当你尝试访问由traefik代理的服务时,应该会被重定向到Tinyauth的登录页面。
以上步骤应该能够帮助你成功安装和配置Tinyauth。如果遇到任何问题,请查阅项目的README文件和官方文档,或者加入项目的Discord社区寻求帮助。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考