我正在通读詹金斯·多克的自述,似乎有一部分与我目前的理解相矛盾。https://github.com/jenkinsci/docker/blob/master/README.md
在我看来,是说不使用绑定挂载,然后说强烈建议使用绑定挂架?
注意:避免使用从主机上的文件夹到 /var/jenkins_home 的绑定装载,因为这可能会导致文件权限问题(容器内使用的用户可能没有对主机上的文件夹的权限)。如果确实需要绑定挂载jenkins_home,请确保容器内的 jenkins 用户(jenkins user - uid 1000)可以访问主机上的目录,或者将 -u some_other_user 参数与 docker run 结合使用。
docker run-d-v jenkins _ home:/var/Jenkins _ home-p 8080:8080-p 50000:50000 Jenkins/Jenkins:lts这将在分离模式下运行Jenkins,并添加端口转发和卷。您可以使用命令“docker logs CONTAINER_ID”访问日志,以便检查第一个登录令牌。容器的ID将从上面命令的输出中返回。
如果您将mount绑定到卷中,您可以随时简单地备份该目录(即jenkins_home)。
强烈建议这样做。像对待数据库一样对待jenkins_home目录 - 在 Docker 中,您通常会将数据库放在卷上。
你使用捆绑坐骑吗?你会推荐他们吗?为什么或为什么不?文件似乎是含糊不清的。
如前所述,使用的语法适用于卷:
docker run -d -v jenkins_home:/var/jenkins_home -n jenkins ...
这定义了一个 Docker 卷名称jenkins_homes,它将在
/var/lib/docker/volumes/jenkins_home
中创建。
其想法是,您可以轻松备份所述卷:
$ mkdir ~/backup
$ docker run --rm --volumes-from jenkins -v ~/backup:/backup ubuntu bash -c “cd /var/jenkins_home && tar cvf /backup/jenkins_home.tar .”
并将其重新加载到另一个Docker实例。
这与绑定挂载不同,后者确实涉及构建一个新的Docker映像,以便能够由您的本地用户挂载本地文件夹所有者(包含官方Jenkins映像中定义的默认用户:1000:1000
)
FROM jenkins/jenkins:lts-jdk11
USER root
ENV JENKINS_HOME /var/lib/jenkins
ENV COPY_REFERENCE_FILE_LOG=/var/lib/jenkins/copy_reference_file.log
RUN groupmod -g <yourId>jenkins
RUN usermod -u <yourGid> jenkins
RUN mkdir "${JENKINS_HOME}"
RUN usermod -d "${JENKINS_HOME}" jenkins
RUN chown jenkins:jenkins "${JENKINS_HOME}"
VOLUME /var/lib/jenkins
USER jenkins
请注意,您必须声明一个新卷(这里是/var/lib/jenkins
),因为正如jenkinsci/docker
问题112中所示,官方的/var/jenkins_home
路径已经在官方Jenkins映像中声明为VOLUME,您不能chown或chmod它。
这种方法的优点是不必使用Docker就可以看到Jenkins home的内容。
您应该使用以下命令运行它:
docker run -d -p 8080:8080 -p 50000:50000 \
--mount type=bind,source=/my/local/host/jenkins_home_dev1,target=/var/lib/jenkins \
--name myjenkins \
myjenkins:lts-jdk11-2.190.3
sleep 3
docker logs --follow --tail 10 myjenkins
我正在尝试在我的环境中测试和使用docker。这是我访问tomcat时的Dockerfile(),我发现这个问题。 注= 建筑 跑 Dockerfile 一件奇怪的事情是,如果我只设置而不设置,我就可以访问或我的应用程序我的文件中是否缺少任何内容? 谷歌搜索=
问题内容: 我有以下代码: 在这种情况下,我需要mysql_real_escape_string还是可以吗? 问题答案: 不,在使用准备好的语句时,您不必自己逃避价值 (即,您不需要调用):DB引擎将自己执行该操作。 (实际上,如果您正在调用并使用绑定参数,则您的字符串将被转义两次- 并不是很好:您最终会到处转义字符…) 附带说明:您的值以整数形式传递 (如所示),因此即使您未使用准备好的语句,也
问题内容: 我正在测试一个小的搜索功能: 但是我遇到了一个我似乎无法解决的错误。您可以在此处查看PDO查询: 如您所见,我正在尝试从查询中绑定参数,但是我不知道这是否真的可能吗? 我收到错误: 未捕获的异常“ PDOException”,消息为“ SQLSTATE [42000]:..... 而且我可以在错误中看到’‘已放在test1%’test1’%附近 我正在尝试的可能吗,还是我需要做类似的事
问题内容: 我正在编写一些Javascript来调整大图像的大小,以适合用户的浏览器窗口。(不幸的是,我没有控制源图像的大小。) 因此,HTML中将包含以下内容: 我是否可以确定 标签中的图像是否已下载? 我需要这样做,因为如果在浏览器加载图像之前执行该命令,就会遇到问题。 并返回占位符的大小(替代文本)。就我而言,这大约是134 x 20。 现在,我只是在检查照片的高度是否小于150,并假设是a
如果docker文件中有RUN命令,那么它会创建一些中间图像。我的问题是,这些中间图像是否占用硬盘的内存?如果是,docker build--rm应该足够了吗?
我正在尝试加载带有数据绑定的图像。但我一直没有忘记。我的问题在哪里?下面是我的代码和布局结构。 MyItemViewModel。kt 布局xml