docker centos:latest 使用 sshd


一、術語

 1.容器

很多用戶在接觸Docker 之初都會認為容器就是一種輕量級的虛擬機,但實際上,容器和虛擬機有非常大的區別。從根本形態上來看,容器其實就是運行在操作系統上的一個進程,只不過加入了對資源的隔離和限制。

2.鏡像

容器是一個動態的概念,而鏡像是一個相對靜止的概念。簡單來說,鏡像就是容器中的文件系統。鏡像就是由Layered FS 組成的,並且它是只讀的。當容器運行時,會在鏡像之上再加上一層可讀可寫層。

3.容器和鏡像的關系

容器和鏡像是密切相關的,二者缺一不可,也是可以相互進行轉換的。通過docker run  即可啟動一個容器運行。當需要將容器轉化為鏡像時,可以通過docker commit 進行轉化。

4.安裝docker

https://www.docker.com/community-edition

 

二、拉取遠程鏡像 centos:latest

docker pull centos:latest

該命令會去遠程鏡像庫拉取,拉取成功后使用命令查看

docker images

 

三、創建容器

docker run --name centosCon1 -i -t  -p 5001:22 centos:latest /bin/bash

docker run 參數詳解:


     1. --name   --表示容器名稱

     2. -i     -- 以交互模式運行容器,通常與 -t 同時使用

     3. -t     --  為容器重新分配一個偽輸入終端,通常與 -i 同時使用

     4. -p    -- 指定容器暴露的端口

     5. 5001:22  -- 表示將宿主機5001端口映射到容器中暴露的22端口

     6. centos:latest     -- docker images 列表中的 REPOSITORY:TAG

     7. /bin/bash        --表示使用bash

 

四、配置sshd

yum -y install openssh-server

若有遇到問題,請查看docker centos:last 開啟sshd 遇到的證書問題

 

五、修改root密碼 [如果未使用--privileged,這里的root只是普通用戶]

passwd root

 

六、提交當前容器為新的鏡像或覆蓋原鏡像

   1.退出當前容器

exit

   2. 查到被我們修改的容器ID

docker ps -a

   3.提交當前容器為新的鏡像或覆蓋原鏡像

docker commit {容器ID} {鏡像名稱}

     說明:

     1.{鏡像名稱}既可以為新的名稱也可以直接覆蓋原始鏡像

     2.docker run 會根據鏡像創建一個容器,如果沒有手動執行 docker rm {容器ID},該容器將會一直存在,你可以啟動、停止、登錄容器;命令如下:

       2.1 啟動:docker start {容器名稱}

       2.2 停止:docker stop {容器名稱}

       2.3 強制停止:docker kill {容器ID}

       2.4 登錄容器:docker attach {容器名稱}   --容器必須啟動; 一個容器支持多個attach,這將會出現屏幕共享效果

    3.使用docker commit后,我們剛才配置的帶有sshd的容器將生成新鏡像或覆蓋原始鏡像,我們又可以基於它來創建新的容器

 

七、使用Xshell+WinSCP連接容器

   host:127.0.0.1

   port:5001

   User:root

   pwd:******


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM