聊聊docker(四)
docker添加ssh服务
0、说明:
网易蜂巢提供了 带有openssh 服务的ubuntu系统
docker pull hub.c.163.com/public/ubuntu:16.04-tools
可以通过该命令进行镜像的下载;
1、基于官方的ubuntu镜像添加ssh服务
1.1、下载官方镜像
docker pull ubuntu
1.2、运行容器
docker run --name ubuntu -t -i -d -p 3316:22 ubuntu
即 运行ubuntu镜像,并指定镜像名称为ubuntu,
-d 以后台方式运行,启动成功后会返回该镜像的hash
-i: 以交互模式运行容器,保证容器中STDIN是开启的。通常与 -t 同时使用;
-t: 为容器重新分配一个伪tty终端,通常与 -i 同时使用;
-p 是将 主机的3316端口映射到docker ubuntu镜像的22端口(22为ssh服务的端口)
1.3、查看启动状态
通过运行docker ps可以查看该镜像的运行状态;如果运行成功,那么可以看到返回的列表中存在该容器的信息
1.4 、进入容器,安装ssh服务
docker exec -t -i ubuntu /bin/bash
这里,-i 后边,可以是 ubuntu镜像的名字,即步骤 1.2中 --name后面取的名字,也可以是 通过docker ps查看到的docker的hash值
/bin/bash 是让ubuntu进入命令行
在进入容器后,所执行的操作,和直接操作ubuntu系统类似
首先 通过 apt-get update
更新源
然后 通过 apt-get install openssh-client
安装ssh客户端程序(openssh-server会依赖openssh-client,部分ubuntu系统中已经预先安装了openssh-client)
然后 通过apt-get install openssh-server
安装ssh服务程序
以上,完成了ssh的安装
在安装后,通过 /etc/init.d/ssh start
将ssh服务启动,如果安装并且启动成功,通过ps -e|grep ssh
可以查看到存在ssh的进程
在测试ssh可以正常启动后,需要配置 sshd_config的文件
首先安装vim
apt-get install vim
然后编辑sshd_config 文件
vim /etc/ssh/sshd_config
需要添加 PermitRootLogin yes
即允许以root用户的方式登录
完成并保存后,对ssh服务重启,service ssh restart
因为要通过root 用户登录,所以要设置root用户的密码
passwd root
命令可以设置root密码