您的位置:首页 > 运维架构 > Docker

Linux主机如何用ssh去登录docker容器的步骤

2016-05-24 23:12 696 查看
进入终端,sudo -i,切换root,输入docker -d

打开另一个终端,切换root,输入docker search ubuntu,大概如下结果:

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]

输入docker pull ubuntu,系统就会从第一个下载镜像

下载完成后,可以输入docker images查看是否已经下载镜像到本地

启动一个ubuntu容器,进入bash,docker run -it ubuntu /bin/bash,

此时应该可以看到 root@bc6a0a7912b1:/# ,证明已经成功开动了容器,并且进入容器的bash

修改容器的root密码:passwd,  直至输入新的密码,例如:123456

安装vim,apt-get install vim -y

安装容器的openssh-server,输入 apt-get install openssh-server -y

成功安装后,vim /etc/ssh/sshd_config,修改下面两个配置

PermitRootLogin yes  

UsePAM no

启动ssh服务,service ssh start

退出容器,输入exit,然后输入docker ps -a,查看容器的ID

提交容器成为新的镜像,例如叫做ubuntu-ssh,输入docker commit 容器ID ubuntu-ssh

启动这个镜像的容器,并映射本地的一个闲置的端口(例如10000)到容器的22端口,并启动容器的sshd docker run -d -p 10000:22 ubuntu-ssh /usr/sbin/sshd -D

现在打开新的终端,输入ssh root@127.0.0.1 -p 10000,如果能链接成功,会要求输入密码的,输入刚才的123456就可以进入容器的终端了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: