【开源项目管理软件Taiga】基于docker30分钟安装完毕,有看板、项目管理、甘特图
这是在生产环境中运行 Taiga 的最简单方法。本文档介绍了如何使用 docker为生产环境部署完整的 Taiga 服务。
如果您已经在使用 taiga-docker,请遵循此迁移指南 191使用
.env
基于新的部署。
注意:
您可以访问较旧的 docker 安装指南 238出于文档目的,仅适用于 Taiga 的早期版本(版本 6.6.0 之前)
要求
在开始安装之前,请确保您已安装:
- docker:版本 >= 19.03.0+
如果您没有安装 docker,请按照docker.com的安装说明进行操作 163:安装Docker引擎| Docker 文档 第556章此外,还需要熟悉 Docker、docker compose 和 Docker 存储库。
入门
复制这个仓库
$ cd taiga-docker/
$ git checkout stable
启动应用程序
$ ./launch-all.sh
过了一会儿,当应用程序启动时,您可以使用以下脚本继续创建超级用户:
$ ./taiga-manage.sh createsuperuser
该taiga-manage.sh
脚本允许在后台实例上启动manage.py命令:
$ ./taiga-manage.sh [COMMAND]
基本配置
数据库配置
您将在文件中找到基本配置变量.env
。如前所述,我们鼓励您编辑这些值,尤其是那些影响安全性的值。
数据库设置
这些变量用于为 Taiga 创建数据库并连接到它。
POSTGRES_USER=taiga # user to connect to PostgreSQL
POSTGRES_PASSWORD=taiga # database user's password
网址设置
这些变量设置您的 Taiga 实例应在何处提供服务,以及在通信层中使用的安全协议。
TAIGA_SCHEME=http # serve Taiga using "http" or "https" (secured) connection
TAIGA_DOMAIN=localhost:9000 # Taiga's base URL
SUBPATH="" # it'll be appended to the TAIGA_DOMAIN (use either "" or a "/subpath")
WEBSOCKETS_SCHEME=ws # events connection protocol (use either "ws" or "wss")
默认配置假定 Taiga在子域中提供服务。例如:
TAIGA_SCHEME=https
TAIGA_DOMAIN=taiga.mycompany.com
SUBPATH=""
WEBSOCKETS_SCHEME=wss
如果 Taiga 在子路径而不是子域中提供服务,则配置应如下所示:
TAIGA_SCHEME=https
TAIGA_DOMAIN=mycompany.com
SUBPATH="/taiga"
WEBSOCKETS_SCHEME=wss
key设置
此变量允许您在 Taiga 中设置用于加密签名的密钥。
SECRET_KEY="taiga-secret-key" # Please, change it to an unpredictable value!
电子邮件设置
默认情况下,电子邮件将在标准输出 ( ) 中打印EMAIL_BACKEND=console
。如果您有自己的 SMTP 服务,请将其更改为EMAIL_BACKEND=smtp
并使用 SMTP 提供商提供的值配置其余变量:
EMAIL_BACKEND=console # use an SMTP server or display the emails in the console (either "smtp" or "console")
EMAIL_HOST=smtp.host.example.com # SMTP server address
EMAIL_PORT=587 # default SMTP port
EMAIL_HOST_USER=user # user to connect the SMTP server
EMAIL_HOST_PASSWORD=password # SMTP user's password
EMAIL_DEFAULT_FROM=changeme@example.com # email address for the automated emails
# EMAIL_USE_TLS/EMAIL_USE_SSL are mutually exclusive (only set one of those to True)
EMAIL_USE_TLS=True # use TLS (secure) connection with the SMTP server
EMAIL_USE_SSL=False # use implicit TLS (secure) connection with the SMTP server
队列管理器设置
这些变量用于在rabbitmq服务中留下消息。
RABBITMQ_USER=taiga # user to connect to RabbitMQ
RABBITMQ_PASS=taiga # RabbitMQ user's password
RABBITMQ_VHOST=taiga # RabbitMQ container name
RABBITMQ_ERLANG_COOKIE=secret-erlang-cookie # unique value shared by any connected instance of RabbitMQ
附件设置
您可以通过更改令牌过期计时器来配置附件的可访问时间。经过该秒数后,令牌将过期,但您始终可以获得带有活动令牌的新附件 URL。
ATTACHMENTS_MAX_AGE=360 # token expiration date (in seconds)
高级配置
高级配置将忽略docker-compose.yml
或中的环境变量docker-compose-inits.yml
。如果您使用环境变量,请跳过此部分。
它要求您将配置文件taiga-back
和taiga-front
服务映射到本地文件,以便解锁更多配置选项。
映射config.py
文件
点击此链接下载文件settings/config.py.prod.example
并重命名:
mv settings/config.py.prod.example settings/config.py
使用您自己的配置进行编辑config.py
:
- Taiga秘钥:改变它很重要。
taiga-events
它必须与和中的密钥具有相同的值taiga-protected
- Taiga url:使用
TAIGA_URL
,SITES
和配置 Taiga 的服务位置FORCE_SCRIPT_NAME
(参见下面的示例) - 连接到 PostgreSQL;检查
DATABASES
文件中的部分 - 连接到 RabbitMQ
taiga-events
;检查文件中的“EVENTS”部分 - 连接到 RabbitMQ
taiga-async
;检查文件中的“TAIGA ASYNC”部分 - 电子邮件凭据;检查文件中的“电子邮件”部分
- 启用/禁用匿名遥测;检查文件中的“TELEMETRY”部分
在子域中配置 Taiga 的示例:
TAIGA_SITES_SCHEME = "https"
TAIGA_SITES_DOMAIN = "taiga.mycompany.com"
FORCE_SCRIPT_NAME = ""
在子路径中配置 Taiga 的示例:
TAIGA_SITES_SCHEME = "https"
TAIGA_SITES_DOMAIN = "taiga.mycompany.com"
FORCE_SCRIPT_NAME = "/taiga"
如果您需要启用某些高级功能,请检查其余配置。
将文件映射到/taiga-back/settings/config.py
. 请记住,您必须将其映射到 和docker-compose.yml
中docker-compose-inits.yml
。x-volumes
您可以通过示例查看docker-compose.yml 中的部分。
映射conf.json
文件
从此链接下载文件dist/conf.example.json
并重命名:
mv dist/conf.example.json dist/conf.json
使用您自己的配置编辑它:
- Taiga url:使用
api
,eventsUrl
和配置 Taiga 的服务位置baseHref
(参见下面的示例)
在子域中conf.json
为 Taiga 提供服务的示例:
{
"api": "https://taiga.mycompany.com/api/v1/",
"eventsUrl": "wss://taiga.mycompany.com/events",
"baseHref": "/",
在子路径conf.json
中服务 Taiga的示例:
{
"api": "https://mycompany.com/taiga/api/v1/",
"eventsUrl": "wss://mycompany.com/taiga/events",
"baseHref": "/taiga/",
如果您需要启用某些高级功能,请检查其余配置。
将文件映射到/taiga-front/dist/config.py
.
配置管理员用户
$ docker compose up -d
$ docker compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage createsuperuser
启动并运行
安装完所有内容后,启动所有服务并检查结果:
$ docker compose up -d
配置代理
您的主机配置需要为http://localhost:9000
.
如果 Taiga 在子域中提供服务:
server {
server_name taiga.mycompany.com;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_pass http://localhost:9000/;
}
# Events
location /events {
proxy_pass http://localhost:9000/events;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_connect_timeout 7d;
proxy_send_timeout 7d;
proxy_read_timeout 7d;
}
# TLS: Configure your TLS following the best practices inside your company
# Logs and other configurations
}
如果 Taiga 在子路径而不是子域中提供服务,则配置应类似于:
server {
server_name mycompany.com;
location /taiga/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_pass http://localhost:9000/;
}
# Events
location /taiga/events {
proxy_pass http://localhost:9000/events;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_connect_timeout 7d;
proxy_send_timeout 7d;
proxy_read_timeout 7d;
}
# TLS: Configure your TLS following the best practices inside your company
# Logs and other configurations
}
更多推荐
所有评论(0)