码头上的jenkins可以进入码头码头
我有一个工作流程如下将webapps发布到我的开发服务器.服务器有一个docker主机,我使用docker-compose来管理容器. >将我的应用程序中的更改推送到私有gitlab(在docker中运行).该应用程序包括一个Dockerfile和docker-compose.yml 我在第3步中遇到的问题是,我设置的方式,jenkins容器可以访问主机停靠站,以便在构建脚本中运行任何docker命令与在主机上运行的Docker命令基本相同.这是使用以下DockerFile for jenkins完成的:
并将以下卷映射到jenkins容器:
jenkins中的典型构建脚本看起来像这样:
这可以正常工作,但有两个问题: 真的感觉像一个黑客但是我发现的唯一其他选项是使用docker插件进行jenkins,发布到注册表,然后让某些方式让主机知道需要重新启动.这是相当多的移动部件,docker-jenkins插件要求docker主机是在一个开放的端口,我真的不想暴露. 我不确定我正在寻找什么解决方案.我看不到任何实际的方法来解决这个问题,但是如果有一种方法允许在jenkins容器中运行docker命令,而不必在DockerFile中硬编码GID,那将是很好的.有人对此有任何建议吗? 最佳答案
我遇到了同样的问题.由于GID问题,我最终给予了Jenkins无密码的sudo权限.我写了更多关于这里:http://container-solutions.com/2015/03/running-docker-in-jenkins-in-docker/
这并不影响安全性,因为docker特权与sudo权限有效地相当. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |