如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://github.com/taigaio/taiga 是一款免费开源的项目管理工具,专为跨职能敏捷团队设计,旨在提升团队协作效率。Elestio提供的此镜像经过验证和打包,确保用户能够便捷部署和使用Taiga,同时可选择通过Elestio平台获取全托管服务,包括自动备份、带SSL终止的反向代理、防火墙、操作系统与软件自动更新等企业级功能。
!https://github.com/elestio-examples/taiga/raw/main/taiga.jpg
适用于需要高效协作的跨职能敏捷团队,包括但不限于:
1. 克隆仓库
bashgit clone https://github.com/elestio-examples/taiga.git
2. 复制环境变量文件
bashcp ./tests/.env ./.env
3. 编辑环境变量文件
使用文本编辑器修改.env文件,设置自定义值(如密码、域名等)。
4. 创建数据目录并设置权限
bashmkdir -p ./data chown -R 1001:1001 ./data
5. 启动服务
bashdocker-compose up -d
服务启动后,可通过 http://your-domain:9000 访问Web界面。
以下是完整的docker-compose.yml配置示例:
yamlversion: "3.5" x-environment: &default-back-environment # 数据库设置 POSTGRES_DB: taiga POSTGRES_USER: taiga POSTGRES_PASSWORD: ${APP_PASSWORD} POSTGRES_HOST: taiga-db # Taiga设置 TAIGA_SECRET_KEY: ${APP_PASSWORD} TAIGA_SITES_SCHEME: "https" TAIGA_SITES_DOMAIN: ${DOMAIN} TAIGA_SUBPATH: "" # 为空或"/subpath" # 邮件设置。取消以下行注释并配置SMTP服务器 EMAIL_BACKEND: "django.core.mail.backends.smtp.EmailBackend" DEFAULT_FROM_EMAIL: ${SMTP_FROM_EMAIL} EMAIL_USE_TLS: "False" EMAIL_USE_SSL: "False" EMAIL_HOST: ${SMTP_HOST} EMAIL_PORT: ${SMTP_PORT} EMAIL_HOST_USER: "" EMAIL_HOST_PASSWORD: "" # Rabbitmq设置 # 需与taiga-async-rabbitmq和taiga-events-rabbitmq保持一致 RABBITMQ_USER: taiga RABBITMQ_PASS: ${APP_PASSWORD} # 遥测设置 PUBLIC_REGISTER_ENABLED: "True" ENABLE_TELEMETRY: "True" TAIGA_TELEMETRY_REFERER: "elest.io" x-volumes: &default-back-volumes - ./taiga-static-data:/taiga-back/static - ./taiga-media-data:/taiga-back/media # - ./config.py:/taiga-back/settings/config.py services: taiga-db: image: postgres:12.3 environment: POSTGRES_DB: taiga POSTGRES_USER: taiga POSTGRES_PASSWORD: ${APP_PASSWORD} volumes: - ./taiga-db-data:/var/lib/postgresql/data networks: - taiga taiga-back: image: taigaio/taiga-back:${SOFTWARE_VERSION_TAG} environment: *default-back-environment volumes: *default-back-volumes networks: - taiga depends_on: - taiga-db - taiga-events-rabbitmq - taiga-async-rabbitmq taiga-async: image: taigaio/taiga-back:${SOFTWARE_VERSION_TAG} entrypoint: ["/taiga-back/docker/async_entrypoint.sh"] environment: *default-back-environment volumes: *default-back-volumes networks: - taiga depends_on: - taiga-db - taiga-back - taiga-async-rabbitmq taiga-async-rabbitmq: image: rabbitmq:3.8-management-alpine environment: RABBITMQ_ERLANG_COOKIE: secret-erlang-cookie RABBITMQ_DEFAULT_USER: taiga RABBITMQ_DEFAULT_PASS: ${APP_PASSWORD} RABBITMQ_DEFAULT_VHOST: taiga volumes: - ./taiga-async-rabbitmq-data:/var/lib/rabbitmq networks: - taiga taiga-front: image: taigaio/taiga-front:${SOFTWARE_VERSION_TAG} environment: TAIGA_URL: ${BASE_URL} TAIGA_WEBSOCKETS_URL: "wss://${DOMAIN}" TAIGA_SUBPATH: "" # 为空或"/subpath" PUBLIC_REGISTER_ENABLED: "true" networks: - taiga # volumes: # - ./conf.json:/usr/share/nginx/html/conf.json taiga-events: image: taigaio/taiga-events:${SOFTWARE_VERSION_TAG} environment: RABBITMQ_USER: taiga RABBITMQ_PASS: ${APP_PASSWORD} TAIGA_SECRET_KEY: ${APP_PASSWORD} networks: - taiga depends_on: - taiga-events-rabbitmq taiga-events-rabbitmq: image: rabbitmq:3.8-management-alpine environment: RABBITMQ_ERLANG_COOKIE: secret-erlang-cookie RABBITMQ_DEFAULT_USER: taiga RABBITMQ_DEFAULT_PASS: ${APP_PASSWORD} RABBITMQ_DEFAULT_VHOST: taiga volumes: - ./taiga-events-rabbitmq-data:/var/lib/rabbitmq networks: - taiga taiga-protected: image: taigaio/taiga-protected:${SOFTWARE_VERSION_TAG} environment: MAX_AGE: 360 SECRET_KEY: ${APP_PASSWORD} networks: - taiga taiga-gateway: image: nginx:1.19-alpine ports: - "172.17.0.1:9000:80" volumes: - ./taiga-gateway/taiga.conf:/etc/nginx/conf.d/default.conf - ./taiga-static-data:/taiga/static - ./taiga-media-data:/taiga/media networks: - taiga depends_on: - taiga-front - taiga-back - taiga-events networks: taiga:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
POSTGRES_DB | PostgreSQL数据库名称 | taiga |
POSTGRES_USER | PostgreSQL数据库用户 | taiga |
POSTGRES_PASSWORD | PostgreSQL数据库密码 | ${APP_PASSWORD} |
TAIGA_SECRET_KEY | Taiga应用密钥 | ${APP_PASSWORD} |
TAIGA_SITES_SCHEME | 网站访问协议(http/https) | "https" |
TAIGA_SITES_DOMAIN | 网站域名 | ${DOMAIN} |
TAIGA_SUBPATH | 子路径(如使用子路径部署) | "" |
EMAIL_BACKEND | 邮件后端 | "django.core.mail.backends.smtp.EmailBackend" |
DEFAULT_FROM_EMAIL | 发件人*** | ${SMTP_FROM_EMAIL} |
EMAIL_HOST | SMTP服务器地址 | ${SMTP_HOST} |
EMAIL_PORT | SMTP服务器端口 | ${SMTP_PORT} |
RABBITMQ_USER | RabbitMQ用户名 | taiga |
RABBITMQ_PASS | RabbitMQ密码 | ${APP_PASSWORD} |
PUBLIC_REGISTER_ENABLED | 是否允许公开注册 | "True" |
Elestio Taiga Docker镜像将容器日志输出到stdout,可通过以下命令查看:
bashdocker-compose logs -f
停止服务:
bashdocker-compose down
由于采用文件夹卷挂载,备份和恢复操作简单易行:
创建备份(ZIP存档)
bashdocker-compose down
docker-compose.yml所在目录,执行以下命令创建ZIP存档:
bashzip -r myarchive.zip .
从备份恢复
bashunzip myarchive.zip -d /path/to/original/folder
bashdocker-compose up -d
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务