Linux系统安装docker并用ssh登录docker容器的操作方法
说明:我使用的是Centos安装docker
第一步:安装docker
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.daocloud.io/docker/linux/centos/docker-ce.repo
sudo yum install -y -q --setopt=obsoletes=0 docker-ce-17.09.1.ce* docker-ce-selinux-17.09.1.ce*
sudo systemctl enable docker sudo systemctl start docker sudo service docker status
备注:这是我之前安装好了的,所以系统不用更新大部分东西。
如果大家想要安装Linux下其他版本的docker的话,可以到这个网址下看一下安装命令:
https://download.daocloud.io/Docker_Mirror/Docker 点击打开链接
第二步:配置docker加速器
在DaoCloud下(网址为www.daocloud.io)注册个账号,往下拉到最后然后点击加速器
复制这个配置加速器的代码,运行
第三步:在docker上安装ubuntu系统
docker search ubuntu 查看有哪些版本的ubuntu镜像
docker search ubuntu
我用docker pull ubuntu 将第一个直接下载进来:
docker images 查看下载好的docker镜像:
docker run -tid --name ubuntu -p 23:22 ubuntu:将新建的docker命名为ubuntu并映射到23端口
netstat -apnl | grep 23 查看23端口是否开启
可以看到23端口是开着的。
docker exec -ti ubuntu /bin/bash 进入docker的Ubuntu (或者使用dockerrun -i -t ubuntu /bin/bash),然后通过passwd命令修改root的密码。
第四步: 用ssh登录docker容器
apt install -y vim 安装(更新)一下vim
因为出现unable to locate package,所以要更新一下源。
接着安装openssh-server: apt install -y openssh-server
成功安装后,vim /etc/ssh/sshd_config,修改下面配置,使得可以直接使用root登录:
1)添加PermitRootLogin yes
我将上面的一句注释掉,加上PermitRootLogin yes这一句。
2)添加UsePAM no
启动ssh服务,service sshstart
exit退出docker,输入docker ps -a,查看docker的ID
打开一个新终端,通过ssh [email protected] -p 23 进入docker:
或者直接配置在xshell中新设置一个会话,添加加我们之前设置的端口号(23),登录进入也行。
提醒一下:我使用的服务器是阿里云的,阿里云的很多端口默认是没开的,我设置的23端口也没开,注意要到阿里云控制台开启,不然会ssh不进去的。
第五步:我们还可以存储这个ubuntu镜像:
使用sudo docker save -o ubuntu.zip ubuntu会在当前目录存储。
然后在任何一台机子载入镜像:
第六步:如果我们不喜欢现有的镜像,也可以删除掉:
查看安装容器的ID
在删除前先关掉docker容器:
然后进行删除:docker rm + 安装容器的ID
可以看到已经没有容器在工作了,所以现在也登不上去了。
至此,Linux系统安装docker并用ssh登录docker容器配置完毕。