1. 程式人生 > >Linux主機如何用ssh去登入docker容器的步驟

Linux主機如何用ssh去登入docker容器的步驟

    1. 進入終端,sudo -i,切換root,輸入docker -d

    2. 開啟另一個終端,切換root,輸入docker search ubuntu,大概如下結果:

    3. NAME                           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
      ubuntu                         Ubuntu is a Debian-based Linux operating s...   2306      [OK]       
      ubuntu-upstart                 Upstart is an event-based replacement for ...   33        [OK]       
      torusware/speedus-ubuntu       Always updated official Ubuntu docker imag...   25                   [OK]
      tleyden5iwx/ubuntu-cuda        Ubuntu 14.04 with CUDA drivers pre-installed    18                   [OK]
      ubuntu-debootstrap             debootstrap --variant=minbase --components...   14        [OK]       
      guilhem/vagrant-ubuntu                                                         11                   [OK]

    4. 輸入docker pull ubuntu,系統就會從第一個下載映象

    5. 下載完成後,可以輸入docker images檢視是否已經下載映象到本地

    6. 啟動一個ubuntu容器,進入bash,docker run -it ubuntu /bin/bash,

    7. 此時應該可以看到 [email protected]:/# ,證明已經成功開動了容器,並且進入容器的bash,執行apt update

    8. 修改容器的root密碼:passwd,  直至輸入新的密碼,例如:123456

    9. 安裝vim,apt-get install vim -y

    10. 安裝容器的openssh-server,輸入 apt-get install openssh-server -y

    11. 成功安裝後,vim /etc/ssh/sshd_config,修改下面兩個配置

    12. PermitRootLogin yes  
      UsePAM no

    13. 啟動ssh服務,service ssh start

    14. 退出容器,輸入exit,然後輸入docker ps -a,檢視容器的ID

    15. 提交容器成為新的映象,例如叫做ubuntu-ssh,輸入docker commit 容器ID ubuntu-ssh

    16. 啟動這個映象的容器,並對映本地的一個閒置的埠(例如10000)到容器的22埠,並啟動容器的sshd docker run -d -p 10000:22 ubuntu-ssh /usr/sbin/sshd -D

    17. 現在開啟新的終端,輸入ssh [email protected] -p 10000,如果能連結成功,會要求輸入密碼的,輸入剛才的123456就可以進入容器的終端了