docker鏡像制作(一)
- 一、基于容器的鏡像制作(例如虛擬機ssh登錄容器,以centos7.4為例)
- 1、 啟動基礎鏡像容器,并安裝軟體包
- 2、對ssh進行配置
- 3、更改容器內的root密碼,否則遠程登錄不了
- 4、查看容器的ip地址
- 5、宿主機ssh連接測驗
- 6、對已經做好ssh功能的容器進行保存,并做成鏡像檔案
- 7、基于新鏡像啟動容器,實作centos7.4+sshd功能
- 8、查看新容器的ip地址,使用xshell連接容器
一、基于容器的鏡像制作(例如虛擬機ssh登錄容器,以centos7.4為例)
1、 啟動基礎鏡像容器,并安裝軟體包
docker run -it --name="ljm_centos" centos:7.4.1708
yum install -y net-tools openssl openssh-server


2、對ssh進行配置
/usr/sbin/sshd -D

分別執行以下命令:
ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''

修改sshd_config檔案配置資訊,暴露22埠,并且設定是否允許root用戶登錄
17行取消注釋
Port 22
38行取消注釋
PermitRootLogin yes

開始ssh服務,并放入后臺執行
/usr/sbin/sshd -D &

3、更改容器內的root密碼,否則遠程登錄不了

4、查看容器的ip地址

5、宿主機ssh連接測驗

6、對已經做好ssh功能的容器進行保存,并做成鏡像檔案
docker commit ljm_centos ljm/centos7.4_sshd:v1

7、基于新鏡像啟動容器,實作centos7.4+sshd功能
開啟新鏡像后,發現sshd能啟動,但是容器啟動后,默認第一行程為/bin/bash,所以退出后容器屬于退出狀態,
因此我們需要把第一行程設定為 /usr/sbin/sshd ,并后臺運行,這樣退出/bin/bash后,ssh仍然在繼續運行
docker container run -d --name=sshd -p 222:22 鏡像名稱 /usr/sbin/sshd -D

8、查看新容器的ip地址,使用xshell連接容器
docker container inspect fe7abde908c8 | grep IPAddress




轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/278827.html
標籤:其他
