在docker容器中運行jenkins

一、準備工作

1.ubuntu14.04

2.安裝好docker環境


二、搭建過程

1.搜索jenkins鏡像文件並拉取

sudo docker search jenkins   //搜索jenkins的鏡像文件
sudo docker pull jenkins     //拉取官方的最新的jenkins文件(在上一篇文章中已經設置了網易代理)

2.運行jenkins鏡像作爲容器

運行命令如下:

sudo docker run -d -p 8099:8080 -v /opt/data/jenkins_home:/var/jenkins_home --name wjenkins jenkins:latest

-d 是後臺啓用jenkins服務
-p 是端口映射
-v 是數據掛載
--name 是爲容器命名
***因爲要經常使用,所以就不用-rm參數了***

執行以上命令就已經成功地在docker中運行jenkins了,然後再在瀏覽器中輸入ip:8099就會訪問jenkins了,是不是so easy呢?


三、Q&A

1.爲什麼在docker中運行了jenkins下載了一些插件,下次運行的時候還是要重新下載

這是因爲沒有使用數據掛載,數據源沒有保留在宿主機上

2.爲什麼按照以上操作,容器卻啓動不起來,使用sudo docker ps命令發現該容器並沒啓動

*這是因爲啓動jenkins的用戶一般來說是其他用戶,所以映射的宿主機的目錄沒有權限進行操作。

3.jenkins鏡像文件下載太慢

這是因爲沒有設置國內代理,具體的可以參考:docker學習之搭建自己的本地鏡像倉庫


四、其他

1.背景

我在虛擬機中打開網頁太卡,因此想通過直接在windows的窗口中訪問虛擬機的docker容器中的jenkins

2.做法

#查看虛擬機的ip地址
ifconfig  //我的虛擬機的ip是192.168.147.129
然後在windows的瀏覽器窗口中輸入192.168.147.129:8099即可

這裏採用的另外一種方案,因爲輸入ip地址麻煩不容易記住:更改windows的dns解析

  1. 找到C:\Windows\System32\drivers\etc\host文件
  2. 在最後添加一行 192.168.147.129 jenkins
  3. 在瀏覽器窗口輸入 jenkins:8099,出現以下界面即爲成功

3.將該jenkins鏡像文件推送到自己的本地倉庫

sudo docker tag jenkins:latest 192.168.147.129:5000/jenkins  //打tag
sudo docker push 192.168.147.129:5000/jenkins  //推送

五、總結

其實在docker容器中運行jenkins的操作步驟挺簡單的,我第一次啓動容器成功了,但是發現自己並沒有給容器命名,然後將該容器刪掉,重新運行後卻意外的發現自己的容器一直啓動失敗,經過長時間和錯誤做鬥爭,才發現是由於啓動jenkins的用戶對宿主機上的掛載目錄沒有權限導致的.

如果對文章有疑問或者哪裏不懂的請聯繫我,在力所能及的範圍內幫助解答;如果文章有錯誤,也歡迎指出。

知乎鏈接:https://zhuanlan.zhihu.com/p/38582629

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章