在Docker容器中启动Jenkins

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

docker pull jenkins 

接下来,使用该映像和映射数据目录从容器运行一个容器到主机; 例如在下面的例子中,容器中的/ var / jenkins_home被映射到主机上当前path的jenkins /目录。 jenkins8080港口也暴露在主机作为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 run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins 

这会将jenkins数据存储在主机上的/ your / home中。 确保容器中的jenkins用户(jenkins user – uid 1000)可以访问/ your / home,或者在docker run中使用-u some_other_user参数。

这个信息也在Dockerfile中find。 所以你所要做的就是确保目录$PWD/jenkins是由UID 1000所拥有的:

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