docker創建支持ssh服務的centos鏡像

以centos爲基礎,目的使用ssh服務遠程連接docker容器

環境:宿主機centos7,直接搜索docker的centos鏡像,下載最新版本

1、先按照docker:yum install -y epel-release

                       yum install -y docker

2、啓動docker: systemctl start docker.service

3、使用ps查看docker是否啓動

      ps aux |grep docker

4、下載centos的docker鏡像

      docker pull centos下載最新版本

      查看鏡像如圖所示

wKioL1eFsYKwjorRAAAxzTwwG_Y557.png-wh_50

此時的鏡像裏除了基礎的centos系統外,沒有其他服務及工具

5、啓動centos容器

    docker run -it --name=centos-ssh centos /bin/bash

6、進入到容器中,升級並安裝ssh組件

    yum -y update

    yum -y install openssh-server

7、編輯sshd的配置文件/etc/ssh/sshd_config,將其中US人PAM參數設置爲0

8、在宿主機中生成密鑰對,把生成的公鑰文件內容複製到容器的/root/.ssh/authorized_keys裏

如果沒有請創建。

ssh-keygen -t rsa直接回車即可,查看公鑰內容,並複製到容器中

cat /root/.ssh/id_rsa.pub

9、設置容器root密碼

echo "root:123456"|chpasswd

10、啓動sshd服務並退出容器

/usr/sbin/sshd -D

exit

11、生成支持ssh的新centos鏡像

首先查看容器docker ps -a

wKioL1eFwh2R1vW2AAAiJEAIQv4936.png-wh_50

生成鏡像

docker commit e813dfb36be9 sshd-centos

此時生成一個名爲sshd-centos的鏡像

docker images查看

wKiom1eFwpLhW61IAAA5ArjgCBM470.png-wh_50

12、運行該鏡像並啓動sshd服務

docker run -p 10022:22 -d sshd-centos /usr/sbin/sshd -D

說明: 10022是宿主機的和容器的通訊端口,外面窗口(局域網)通過訪問地址

ssh root@宿主機IP 10022(IP和端口之間有空格,不是:)就能進入容器



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