Docker容器使用MobaXterm连接
Docker容器使用MobaXterm连接创建容器Ubuntu创建容器并映射端口SSH默认端口是22,所以将宿主机的某空闲端口映射到容器的端口22,笔者选的50022。此时外部访问宿主机50022端口,就相当于在访问容器的22端口。docker pull ubuntu:latestdocker run -it --privileged=true -p 50022:22 --name ubuntuu
Docker容器使用MobaXterm连接
创建容器Ubuntu
SSH默认端口是22,所以将宿主机的某空闲端口映射到容器的端口22,笔者选的50022。此时外部访问宿主机50022端口,就相当于在访问容器的22端口。
docker pull ubuntu:latest
docker run -it --privileged=true -p 50022:22 --name ubuntu ubuntu bash
# 在容器中安装某些大型软件,如matlab时可能需要让--privileged=true,
# -p后跟端口映射,--name后跟你喜欢的容器名,-v后跟地址映射,根据你的需求来指定文件夹
# -v /d/docker/ubuntu_fsl_disp:/shared_data
docker GUI中查看端口情况:
用如下镜像源sources.list
替换/etc/apt/sources.list
mv /etc/apt/sources.list /etc/apt/sources.list.backup
vim /etc/apt/sources.list
# 163源 for ubuntu 2020.04
deb http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
apt-get update
apt-get install vim
apt-get install git
apt-get install net-tools
容器中配置SSH连接
容器中安装SSH server
apt-get install openssh-server
修改sshd_config,开放22端口,并允许密码登录
echo "Port 22">>/etc/ssh/sshd_config
echo "PermitRootLogin yes">>/etc/ssh/sshd_config
启动ssh服务
service ssh start
查看ssh状态
service ssh status
ssh自启,输入以下命令有问题,按照提示操作也没有解决,暂时不采用开机启动而直接采用打开终端时启动SSH。
systemctl enable ssh
Synchronizing state of ssh.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable ssh
打开终端时启动SSH。写如下脚本ssh_auto_start.sh
,把它放在某个位置,笔者放在根目录下的。
#!/bin/bash
service ssh start
service ssh status
修改其权限为可执行。
chmod 755 ~/ssh_auto_start.sh
添加脚本路径与脚本名到/root/.bashrc。重启终端,就会提示SSH已经启动。
echo "~/ssh_auto_start.sh ssh_auto_start.sh">>/root/.bashrc
先设置容器root用户密码,没有密码外部无法登陆。
passwd
查看22端口是否处于监听状态。
netstat -ap | grep ssh
若不是,service ssh restart
重启一下SSH
mobaXterm远程登录docker容器
到此SSH连接成功。
更多推荐
所有评论(0)