jenkins - 在 Docker 容器中启动 Jenkins

标签 jenkins docker centos7

我想在 Centos7 上的 Docker 容器中运行 Jenkins。 我看到了Jenkins的官方文档: 首先,从 Docker 仓库拉取官方的 jenkins 镜像。

docker pull jenkins

接下来,使用该镜像运行一个容器,并将容器中的数据目录映射到主机;例如,在下面的示例中,容器中的/var/jenkins_home 从主机上的当前路径映射到 jenkins/目录。 Jenkins 8080 端口也作为 49001 暴露给主机。

docker run -d -p 49001:8080 -v $PWD/jenkins:/var/jenkins_home -t jenkins

但是当我尝试运行 docker 容器时,出现以下错误:

/usr/local/bin/jenkins.sh: line 25: /var/jenkins_home/copy_reference_file.log: Permission denied

谁能告诉我如何解决这个问题?

最佳答案

Jenkins Docker 官方镜像 documentation说关于卷:

docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins

This will store the jenkins data in /your/home on the host. Ensure that /your/home is accessible by the jenkins user in container (jenkins user - uid 1000) or use -u some_other_user parameter with docker run.

也可以找到此信息 in the Dockerfile . 所以你需要做的就是确保目录 $PWD/jenkinsUID 1000:

mkdir jenkins
chown 1000 jenkins
docker run -d -p 49001:8080 -v $PWD/jenkins:/var/jenkins_home -t jenkins

关于jenkins - 在 Docker 容器中启动 Jenkins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34706077/

相关文章:

jenkins - 如何使用 kubernetes 插件在 Jenkins 管道中使用后期步骤

windows - Jenkins Windows Master 连接到 Slave Mac OSX

maven - --mount=type=cache 在 buildkit

linux - 如何更新 CentOS 7 的 Azure VM 代理(又名 "waagent"软件包)?

julia - Julia中线程的环境变量问题

javascript - Javascript 项目的 CIS

java - JSch session 超时限制

rest - 如何从在Docker容器中运行的Confluence服务器启用/访问Confluence API

docker - 从容器外部编辑Docker容器中的文件?

docker - 如何在 CentOS7 中更改 docker daemon 根目录