
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!Atlassian Bamboo
Bamboo是一款持续集成和部署工具,可将自动构建、测试和发布整合到单一工作流中。
了解更多关于Bamboo的信息:[***]
此Docker容器可轻松启动和运行Bamboo实例。
对于用于存储仓库数据(及其他内容)的BAMBOO_HOME目录,我们建议将主机目录挂载为数据卷,如果使用版本>=1.9的Docker,也可通过命名卷挂载。
开始使用时,您可以使用数据卷或命名卷。本示例中我们使用命名卷:
bash$> docker volume create --name bambooVolume $> docker run -v bambooVolume:/var/atlassian/application-data/bamboo --name="bamboo" -d -p 8085:8085 -p 54663:54663 dchevell/bamboo
成功。Bamboo现在可通过http://localhost:8085访问*
请确保您的容器已分配必要的资源。我们建议分配2GiB内存以适应应用服务器。有关更多信息,请参见系统要求。
* 注意:如果在Mac OS X上使用docker-machine,请使用open http://$(docker-machine ip default):8085。
如果需要覆盖Bamboo的默认内存分配,可通过以下环境变量控制JVM的最小堆(Xms)和最大堆(Xmx):
JVM_MINIMUM_MEMORY(默认值:512m)
JVM的最小堆大小
JVM_MAXIMUM_MEMORY(默认值:1024m)
JVM的最大堆大小
如果Bamboo在反向代理服务器后运行(如此处所述),则需要指定额外选项以使Bamboo了解此设置。可通过以下环境变量控制:
ATL_PROXY_NAME(默认值:NONE)
反向代理的完全限定主机名。CATALINA_CONNECTOR_PROXYNAME也受支持以保持向后兼容性。
ATL_PROXY_PORT(默认值:NONE)
通过其访问Jira的反向代理端口号。CATALINA_CONNECTOR_PROXYPORT也受支持以保持向后兼容性。
ATL_TOMCAT_PORT(默认值:8085)
Tomcat/Jira监听的端口。根据容器部署方法,可能需要暴露和发布此端口。
ATL_TOMCAT_SCHEME(默认值:http)
访问应用程序的协议。CATALINA_CONNECTOR_SCHEME也受支持以保持向后兼容性。
ATL_TOMCAT_SECURE(默认值:false)
如果ATL_TOMCAT_SCHEME为'https',则设置为'true'。CATALINA_CONNECTOR_SECURE也受支持以保持向后兼容性。
ATL_TOMCAT_CONTEXTPATH(默认值:NONE)
应用程序提供服务的上下文路径。CATALINA_CONTEXT_PATH也受支持以保持向后兼容性。
还支持以下Tomcat/Catalina选项。有关更多信息,请参见[***]
ATL_TOMCAT_MGMT_PORT(默认值:8007)ATL_TOMCAT_MAXTHREADS(默认值:150)ATL_TOMCAT_MINSPARETHREADS(默认值:25)ATL_TOMCAT_CONNECTIONTIMEOUT(默认值:20000)ATL_TOMCAT_ENABLELOOKUPS(默认值:false)ATL_TOMCAT_PROTOCOL(默认值:HTTP/1.1)ATL_TOMCAT_ACCEPTCOUNT(默认值:100)如果需要向Bamboo传递额外的JVM参数(例如指定自定义信任存储),可通过以下环境变量添加:
JVM_SUPPORT_RECOMMENDED_ARGS
Bamboo的额外JVM参数
示例:
bash$> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/bamboo/cacerts -v bambooVolume:/var/atlassian/application-data/bamboo --name="bamboo" -d -p 8085:8085 -p 54663:54663 dchevell/bamboo
ATL_AUTOLOGIN_COOKIE_AGE(默认值:***;两周,以秒为单位)
用户使用"记住我"功能可保持登录的最长时间。
BAMBOO_HOME
Bamboo主目录。可能位于挂载卷上;如果是,则应由用户bamboo可写。有关UID映射的注意事项,请参见下文。
ATL_BROKER_URI(默认值:nio://0.0.0.0:54663)
ActiveMQ代理URI,用于监听入站远程代理通信。
ATL_BROKER_CLIENT_URI
远程代理将用于尝试与Bamboo服务器上的ActiveMQ代理建立连接的ActiveMQ代理客户端URI。
可选择从环境配置数据库,这将为安装向导预填充数据库信息。密码无法预填充。
如果使用此功能,必须提供以下所有变量:
ATL_JDBC_URL
数据库URL;特定于数据库。
ATL_JDBC_USER
用于连接的数据库用户。
ATL_DB_TYPE
数据库类型;支持的有效值为:
mssqlmysqloracle12cpostgresql注意:由于许可限制,Bamboo不随附MySQL或Oracle JDBC驱动程序(自Bamboo 7.0起)。要使用这些数据库,需要将合适的驱动程序复制到容器中并重启。例如,要将MySQL驱动程序复制到名为"bamboo"的容器中,可执行以下操作:
bashdocker cp mysql-connector-java.x.y.z.jar bamboo:/opt/atlassian/bamboo/lib docker restart bamboo
以下变量用于数据库连接池,为可选变量:
ATL_DB_POOLMINSIZE(默认值:3)ATL_DB_POOLMAXSIZE(默认值:100)ATL_DB_TIMEOUT(默认值:120)ATL_DB_IDLETESTPERIOD(默认值:30)ATL_DB_MAXSTATEMENTS(默认值:0)ATL_DB_VALIDATE(默认值:false)ATL_DB_ACQUIREINCREMENT(默认值:3)ATL_DB_VALIDATIONQUERY(默认值:"select 1")SET_PERMISSIONS(默认值:true)
定义是否在启动时设置主目录权限。设置为false可禁用此行为。
默认情况下,Bamboo应用程序以用户bamboo运行,UID和GID为2005。此UID必须对主目录文件系统具有写权限。如果出于某种原因必须使用不同的UID,有多种选项可用:
要升级到更新版本的Bamboo,只需停止bamboo容器并基于更新的镜像启动新容器:
bash$> docker stop bamboo $> docker rm bamboo $> docker run ...(参见上文)
由于您的数据存储在主机上的数据卷目录中,升级后仍可使用。
注意:请确保不要使用-v选项意外删除bamboo容器及其卷。
对于评估,您可以使用内置数据库,其文件将存储在Bamboo主目录中。在这种情况下,创建Docker卷的备份存档即可。
如果使用外部数据库,可配置Bamboo每晚自动备份。这将把当前状态(包括数据库)备份到bambooVolume Docker卷,然后可对其进行存档。或者,您可以单独备份数据库,并继续创建Docker卷的备份存档以备份Bamboo主目录。
了解更多关于数据恢复和备份的信息:[***]
latest标签匹配Atlassian Bamboo的最新版本。因此dchevell/bamboo:latest将使用可用的最新版本Bamboo。
或者,您可以使用特定的主版本、主.次版本或主.次.补丁版本的Bamboo,方法是使用版本号标签:
dchevell/bamboo:6dchevell/bamboo:6.6dchevell/bamboo:6.6.3还提供Alpine基础版本。dchevell/bamboo:alpine将使用可用的最新版本Bamboo,或者您可以使用以下版本号标签:
dchevell/bamboo:6-alpinedchevell/bamboo:6.6-alpinedchevell/bamboo:6.6.3-alpine所有6.0+版本均可用。
这些镜像包含内置脚本,协助执行常见的JVM诊断任务。
/opt/atlassian/support/thread-dumps.sh可通过docker exec运行,轻松触发从容器化应用程序收集线程转储。例如:
bashdocker exec my_container /opt/atlassian/support/thread-dumps.sh
默认情况下,此脚本将以5秒间隔收集10个线程转储。可通过分别使用-c/--count和-i/--interval传递自定义的计数和间隔值来覆盖此设置。例如,要以3秒间隔收集20个线程转储:
bashdocker exec my_container /opt/atlassian/support/thread-dumps.sh --count 20 --interval 3
线程转储将写入$APP_HOME/thread_dumps/<date>。
注意:默认情况下,此脚本还将捕获以"线程模式"运行的top输出。可通过传递-n/--no-top禁用此功能。
/opt/atlassian/support/heap-dump.sh可通过docker exec运行,轻松触发从容器化应用程序收集堆转储。例如:
bashdocker exec my_container /opt/atlassian/support/heap-dump.sh
堆转储将写入$APP_HOME/heap.bin。如果此位置已存在文件,使用-f/--force覆盖现有堆转储文件。
这些镜像中还包含jcmd工具,可通过在运行的容器中启动bash shell来使用:
bashdocker exec -it my_container /bin/bash
此Docker容器不受支持,仅用于演示目的。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

来自真实用户的反馈,见证轩辕镜像的优质服务