centos 官方镜像远程ssh连接

  • 近来学习docker的使用部署,在现有的群晖上使用docker功能,想在外面用ssh远程连接进docker,但是发现了几个问题,如连接IP和ssh服务等,故作此记

  • 本记录默认系统中已拉取到centos的镜像,遂不做前期操作


1.确保系统中已有centos

# docker images |grep centos

这里写图片描述

2.用该镜像启动容器

启动docker并将容器的22端口映射到主机10000端口上(方便后面ssh连接)

# docker run -it -p 10000:22 registry.cn-shanghai.aliyuncs.com/sa_dockerhub/centos:centos7.4.1708

这里写图片描述
至此进入到容器内部
我们的目的是能够用远程终端连接到此容器,所以先查看容器所分配到的ip

# ifconfig -a

这里写图片描述
发现ifconfig 命令找不到,那就先安装这部分依赖

2.1安装net-tools

# yum search ifconfig

这里写图片描述

# yum install -y  net-tools.x86_64 

这里写图片描述

# ifconfig -a 

再次查看网络信息可以看到如下
这里写图片描述

为了远程能够ssh连接进来,我们需要安装ssh服务centos的docker默认没有安装

# ps -ef | grep ssh 

发现后台没有ssh服务,于是尝试启动,发现服务未安装

# service sshd start

这里写图片描述
此处安装ssh服务(截图省略)

# yum install passwd openssl openssh-server -y

尝试启动ssh

# /usr/sbin/sshd -D

发现如下错误
这里写图片描述

依次执行如下命令

# ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
# ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
# ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N ''
# /usr/sbin/sshd -D&
# echo "/usr/sbin/sshd -D" >> /etc/rc.local

最后利用passwd 命令更改root密码,至此可以愉快的ssh了

这里写图片描述

最后提交修改

root@U:~# docker ps -all
CONTAINER ID        IMAGE                                                                  COMMAND             CREATED             STATUS                      PORTS               NAMES
095e325cd626        registry.cn-shanghai.aliyuncs.com/sa_dockerhub/centos:centos7.4.1708   "/bin/bash"         About an hour ago   Exited (0) 10 seconds ago                       test1

本文若有不足还请多多指正,欢迎讨论.
文章参考
docker中centos7安装ssh服务

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值