
civicactions/docker-jenkins本镜像基于官方Jenkins镜像构建,预集成Docker引擎和docker-compose工具,解决标准Jenkins镜像中缺少Docker环境导致无法直接执行Docker相关操作的问题。适用于需要在CI/CD流程中集成Docker构建、容器化部署的场景,简化环境配置步骤,提升开发部署效率。
bashdocker run -d \ --name jenkins-docker \ -p 8080:8080 \ # Jenkins Web界面端口 -p 50000:50000 \ # Jenkins代理通信端口 -v jenkins_home:/var/jenkins_home \ # 持久化Jenkins数据 -v /var/run/docker.sock:/var/run/docker.sock \ # 共享宿主机Docker服务 -v /usr/bin/docker:/usr/bin/docker \ # 挂载宿主机Docker可执行文件 -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose \ # 挂载docker-compose your-image-name:tag
| 挂载路径 | 作用说明 | 是否必需 |
|---|---|---|
/var/jenkins_home | 持久化Jenkins配置、工作空间、插件等数据 | 是 |
/var/run/docker.sock | 允许容器内Docker访问宿主机Docker服务 | 是 |
/usr/bin/docker | 映射宿主机Docker可执行文件 | 是 |
/usr/local/bin/docker-compose | 映射宿主机docker-compose可执行文件 | 否(如无需compose可省略) |
yamlversion: '3' services: jenkins: image: your-image-name:tag container_name: jenkins-docker ports: - "8080:8080" - "50000:50000" volumes: - jenkins_home:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/bin/docker:/usr/bin/docker - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose restart: always environment: - JENKINS_OPTS="--prefix=/jenkins" # 配置访问路径前缀 - JAVA_OPTS="-Xmx2048m" # 调整JVM内存 volumes: jenkins_home:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
JENKINS_OPTS | Jenkins启动参数(如访问前缀、端口等) | "" |
JAVA_OPTS | JVM配置参数 | -Xmx512m |
DOCKER_HOST | Docker服务地址 | unix:///var/run/docker.sock |
/var/run/docker.sock会使容器获得宿主机Docker的root权限,生产环境建议:
--privileged参数)启动容器后,可通过以下步骤验证Docker环境:
http://<主机IP>:8080)bashdocker --version docker-compose --version
jenkins_home数据卷实现配置持久化jenkins_home卷兼容新版本Jenkinsmanifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务