一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - Docker鏡像制作詳解介紹

Docker鏡像制作詳解介紹

2020-12-12 22:44服務器技術網 服務器知識

這篇文章主要介紹了 Docker鏡像制作詳解介紹的相關資料,需要的朋友可以參考下

最近由于工作原因,需要對Docker鏡像進行制作,這里記錄下,也許對大家也有一定幫助!    

寫在前面:本文docker鏡像制作方法更適用于基于已有docker鏡像一次性修改。

推薦用Docker File制作docker鏡像。

原理是一樣的,但是用docker file制作docker鏡像能夠記錄下操作步驟,方便以后更改或者鏡像丟失后重新創建。
本文以Ubuntu為基礎鏡像,預啟動一個django項目和ssh服務,制作一個新的鏡像。

1、基礎鏡像

我選用的是從Docker官網下載的ubuntu鏡像。

docker run ubuntu

或者

docker pull ubuntu

2、安裝ssh服務

docker run -i -t ubuntu /bin/bash #創建一個容器,-t是臨時終端。

進入ubuntu后,安裝openssh

apt-get install openssh-server #安裝ssh

#需要修改/etc/sshd/sshd_config文件中內容

PermitRootLogin yes

UsePAM no

修改ubuntu的root用戶密碼,以便以后ssh登陸:

sudo passwd root

3、制作新的鏡像

到此,我們需要把這個帶有ssh服務的容器提交成一個鏡像,方便以后在這個基礎上各種改造:

docker commit <container id> <image name>

4、基于現有ssh服務的Ubuntu鏡像,加入django項目,并設置隨容器自啟動

ok,經過以上步驟,doker images可以查看,新提交的doker鏡像已經在里面了,例如image name為ssh-ubuntu的新鏡像。
最基礎的Ubuntu容器已經沒有作用了
利用

doker stop <container id>
doker rm <Container id>

清楚剛剛啟動的最基礎的Ubuntu容器

下面,要基于我們新的ssh-ubuntu進行個性化定制,首先,要將這個鏡像運行起來

docker run -d -p 5001:22 ssh-ubuntu /usr/sbin/sshd -D

(-p為端口映射 容器中22端口應射程主機5001端口  ||   /usr/sbin/sshd -D是指定容器啟動后要運行的command,本處是啟動ssh服務)

容器啟動后,我們可以通過ssh的方式,登陸到容器中

ssh root@doker0_ip -p 5001(22映射端口)

進入到容器后,就可以進行下一步個性化定制了。例如我要把我的django項目放到鏡像中,并隨著容器啟動而啟動。

(1)把django項目拷貝到容器中,用scp命令即可。

(2)比較通用的開機啟動進程方法:

安裝supervisor!

apt-get update && apt-get install supervisor

(如果apt-get install找不到包,先update一下)

然后編輯配置文件,vi /etc/supervisord.conf

?
1
2
3
4
5
6
7
[supervisord]
nodaemon=true
[program:sshd]
command=/usr/sbin/sshd -D
 
[program:tomcat]
command=python ~/manager.py runserver 0.0.0.0:9999

然后保存退出即可。

用3小節方法重新制作新的鏡像,清除當前容器即可。

5、運行新鏡像

docker run -d -p 5001:22 -p 5000:9999 <image-name> /etc/supervisord
此時,可以訪問主機5000端口,看看能不能訪問到容器里面的django項目。
鏡像制作大體過程至此完成。

*****************************************************************************************************************************************************

docker 本身是有push 來上傳的 index.docker.io 的,使用是用pull拉取。但是沒有條件搭建本地docker倉庫或者需要將應用導出到另外一個Docker環境中,我們可以將docker鏡像導出到一個文件,具體做法如下:

 sudo docker export <容器id>  >  docker_app.tar

完成后我們剛才制作的容器就導出成了 docker_app.tar 文件, 以后在其他機器部署的時候執行導入

cat docker_app.tar | sudo docker import - docker_app

管道后面的 docker_app 為導入后image命名,自己指定

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久精品亚洲热综合一本 | 日老逼 | 高跟丝袜hdvideossex | 亚洲娇小videos | 国产亚洲精品久久yy5099 | 99久久国产亚洲综合精品 | 午夜国产精品影院在线观看 | 欧美美女一区二区三区 | 日本粉色视频 | 国产suv精品一区二区四区三区 | 国产高清经典露脸3p | 精品欧美一区二区三区四区 | 女人叉开腿让男人捅 | japan日韩xxxx69hd japanese在线观看 | 91精品国产91久久久久久麻豆 | 全肉np巨肉一女np高h双龙 | 男人的j放进女人的p全黄 | 女人被男人躁得好爽免费视频 | 日韩r| 久久久无码精品亚洲A片猫咪 | 91久久国产成人免费观看资源 | 日本中年japanesebear | 美女脱得一二净无内裤全身的照片 | 国产女主播在线播放一区二区 | 女黑人尺寸bbb | 高清国语自产拍免费视频国产 | 狠狠色狠狠色综合系列 | 91搞搞 | 视频一区 日韩 | 四虎成人国产精品视频 | 小泽玛丽av无码观看 | 美女的让男人桶爽30分钟的 | 免费亚洲视频在线观看 | 欧洲美女人牲交一级毛片 | 美女脱了内裤打开腿让男人图片 | 高清国产激情视频在线观看 | 深夜免费在线视频 | 欧美整片完整片视频在线 | 九九精品视频在线免费观看 | 91po国产在线高清福利 | 欧美一区二区三区成人看不卡 |