創(chuàng)建帶ssh服務(wù)的CentOS Docker鏡像

一、下載centos鏡像
命令:
  docker pull centos
解釋:
  docker pull【拉取命令】centos【鏡像名(可指定版本號,例如:centos:centos7.1)】
二、啟動centos Docker容器,并使用bash控制臺進(jìn)入容器內(nèi)
命令:   
  docker run -it —name=centos-sshd centos /bin/bash
解釋:
  docker run【運行命令】-it【可交互參數(shù)】—name=centos-sshd【自定義容器名稱參數(shù)】centos【鏡像名參數(shù)】/bin/bash【bash指令參數(shù)】
三、更新yum環(huán)境
命令:  
  yum update
解釋:
  yum update【更新命令】
四、安裝vim
命令:
  yum install vim
解釋:
  yum install【安裝命令】 vim【軟件名稱】
五、安裝openssh-server
命令:
  yum install openssh-server
解釋:
  yum install【安裝命令】openssh-server【軟件名稱】
六、安裝openssh-clients
命令:
  yum install openssh-clients
解釋:
  yum install【安裝命令】openssh-clients【軟件名稱】
七、編輯sshd配置文件
操作:
  1、vim /etc/ssh/sshd_config
  2、查找  /UsePAM
  3、修改設(shè)置 UsePAM no
  4、注釋#HostKey /etc/ssh/ssh_host_ecdsa_key
  5、注釋#HostKey /etc/ssh/ssh_host_ed25519_key
  6、保存退出
八、生成ssh rsa 公鑰
命令:
  ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key
解釋:
  ssh-keygen -t rsa【生成算法】 -b 2048【算法位數(shù)】-f /etc/ssh/ssh_host_rsa_key【文件路徑與文件名】
九、編輯ssh key文件
 操作:
  1、宿主機(jī)中 vim /Users/freedoms/.ssh/id_rsa.pub,并復(fù)制其中內(nèi)容,若沒有則需要在宿主機(jī)中生成
  2、容器中 vim /root/.ssh/authorized_keys,將宿主機(jī)中復(fù)制的公鑰貼入,若無/root/.ssh/authorized_keys,則需要創(chuàng)建
  3、保存退出
十、設(shè)置容器root用戶登錄密碼
命令:
  echo “root:zztXXXXzzt”|chpasswd
解釋:
  修改root用戶登錄密碼
十一、啟動sshd服務(wù)
命令:
  1、systemctl start sshd.service
  2、systemctl enable sshd.service
解釋:
  1、systemctl start【啟動】sshd.service【服務(wù)名稱】
  2、systemctl enable【開機(jī)自啟動】 sshd.service【服務(wù)名稱】
十二、退出容器
命令:
  exit
解釋:
  退出
十三、生成支持ssh的centos鏡像
命令:
  1、docker ps -a
  2、docker commit 6c40d0d2d8e centos7-sshd
  3、docker images
解釋:
  1、docker ps【列出容器列表】 -a【可選參數(shù),列出未啟動容器列表】
  2、docker commit【提交】6c40d0d2d8e【上一步中容器id】 centos7-sshd【自定義鏡像名稱】
  3、docker images【列出本地鏡像列表】
十四、使用生成的鏡像運行容器
命令:
  docker run -p 10022:22 -d freedoms1988/centos7-sshd /usr/sbin/sshd -D
解釋:
  docker run【運行命令】 -p 10022:22【宿主機(jī)端口:容器端口】 -d freedoms1988/centos7-sshd【本地鏡像名】 /usr/sbin/sshd -D【啟動sshd命令】
十五、測試
操作:
  在宿主機(jī)輸出ssh root@localhost -p 10022
結(jié)果:
  應(yīng)正確登錄到容器內(nèi)
十六、將鏡像打包后,提交到DockerHub

向DockerHub私有庫中提交鏡像

十七、Dockerfile

GitHubDockerHub

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容