docker containers中執行docker 命令

背景

在使用Jenkins時,都是直接部署到主機里面Tomcat,方便管理及使用;Jenkins執行docker build等命令較方便,最近一直都在把平臺和工具遷移到docker里面,也想把Jenkins直接遷移到Docker上。

測試環境

宿主機操作系統:Ubuntu 16.04.2 LTS
Docker version 17.03.0-ce, build 60ccb22
Jenkins Docker Image:jenkins:latest 

Jenkins遷移到 Docker

  1. Docker hub加速器
    阿里云加速器
    如果你沒有專屬加速連接,請聯系本人
  2. 直接下載Docker Jenkins官方Image
docker pull jenkins:latest
  1. Docker run
docker run -d --name jenkins \
 --restart=always -u root \
-p 80:8080 -p 5000:5000 \
-v /usr/lib/docker:/usr/lib/docker \
-v /home/azureuser/jenkins-alpine:/var/jenkins_home \ 
-v /lib/systemd/system:/lib/systemd/system \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-v /etc/docker:/etc/docker \
jenkins:latest
  1. Docker containers 執行docker
image.png
  1. Jenkins job 執行docker build
image.png

遇到的坑

  1. 本人使用Docker version 17.03.0-ce,ubuntu下需要安裝libltdl7_2.4.6-0.1_amd64.deb,安裝命令:
dpkg -i libltdl7_2.4.6-0.1_amd64.deb
  1. docker hub 加速器
    ubuntu 16.04修改方式:
vi /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --registry-mirror=https://n9h3vi0d.mirror.aliyuncs.com 
重啟docker daemon
systemctl daemon-reload
systemctl restart docker 

特別說明

Jenkins docker image基礎image操作系統ubuntu和宿主機保持一次,開始本人使用jenkins:alpine版本,宿主機是ubuntu,沒有成功。宿主機其他版本linux未測試。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容