1.  运行某镜像以启动容器

docker run -it -p 127.0.0.1:5000:22  c7fe6d9267f8 /bin/bash

-p 为指定端口, 127.0.0.1 为映射到的物理载体机的IP, 5000 为物理载体机的IP,   22 为容器的端口。

上面的命令运行容器后,将容器的22端口映射到物理实体机的   127.0.0.1:5000 上。

如果物理机有多个网卡,多个网段的话,指定物理机的IP可能比较麻烦,可以使用下面命令:

docker run -it -p  5000:22  c7fe6d9267f8 /bin/bash

5000 为物理机的ip端口,这里不限定物理机的那个IP地址。

22  为容器的端口。

2.  启动容器后,更新源

apt-get update

3.  在容器上安装并配置ssh 服务

进入容器后,ssh登录 物理载体机,报错

说明,ssh服务没有完全安装或启动。

安装 ssh server :

apt-get install openssh-server

发现已经安装,需要启动服务。

启动容器的ssh服务:

启动sshd:

/usr/sbin/sshd -D &

然后更改密码:

passwd

物理机上 ssh  登入容器,成功。

ssh -p 5000 root@192.168.11.206

4.    编写  sshd 启动脚本,以便以后使用。

vim /sshd.sh
#!/bin/bash
/usr/sbin/sshd -D &
chmod 755 /sshd.sh
 
 
 

把此时的容器保存回镜像后可以:

这样的话,如果将该容器保存回镜像后,用命令:

docker run -it -p  5000:22  9e808f1164ab /bin/bash

运行容器的话,进入容器后 执行  /sshd.sh  文件就可以开启sshd 服务。

也可以直接运行:

-------------------------------------------------

将容器保存为镜像:

sudo docker commit 914ce23e23d5  new_pytorch:v0

查看现有仓库  镜像,  新生成的镜像可见,成功生成:

进入容器后,手动启动sshd服务。

---------------------------------------------------------------

需注意的是:

如果使用命令

docker run -it -p 5000:22 new_pytorch:v0 /sshd.sh

来运行容器的话,要求镜像中的  /sshd.sh 文件内容为:

#!/bin/bash
/usr/sbin/sshd -D

如果是:

#!/bin/bash
/usr/sbin/sshd -D &

那么容器会直接把sshd服务挂到后台,然后容器退出运行状态,从而终止掉。

----------------------------------------------------

参考:

https://www.cnblogs.com/ruanqj/p/7374544.html

如果配置  ssh 报错,参照:

在docker 容器开启ssh , 并映射22端口到物理载体机上以使外网访问的更多相关文章

  1. docker 容器开启ssh服务

    ssh服务安装 安装ssh服务 #yum install openssh-server -y 安装passwd(修改密码需要) #yum install passwd -y 修改sshd_config ...

  2. docker安装redis并允许外网访问

    拉取redis镜像 docker pull redis:3.2 本地新建redis配置文件 redis.conf ,写入以下内容 #允许外网访问bind 0.0.0.0 daemonize NO pr ...

  3. Docker CentOS / Ubuntu容器开启 SSH 服务

    Docker CentOS / Ubuntu容器开启 SSH 服务 在CentOS容器内执行 yum install passwd openssl openssh-server -y # Ubuntu ...

  4. 配置docker容器上ssh无密登录

    配置docker容器上ssh无密登录 1.修改所有容器中root账户密码 ssh到远程主机时,首次需要密码访问,因此需要修改root账号密码. 密码必须要8位以上字母数字混合. $>passwd ...

  5. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  6. ssh 如何通过外网访问内网多台服务器

    本帖子未验证: 我看到一个论坛,坛友发的一个问题 http://bbs.51cto.com/thread-934340-1.html 解决方法,我自己开了这个帖子写在这里. 首先你需要一个软件“Sec ...

  7. 浏览器/外网访问docker container中的hadoop

    假设你制作了个docker的 hadoop的镜像,镜像名叫 hd_image,如果想在外网的浏览器中访问hadoop的50070和8088端口,则在启动镜像hd_image时, 脚本如下: docke ...

  8. linux centos7 开启 mysql 3306 端口 外网访问 的实践

    第〇步:思路 3306 端口能否被外网访问,主要要考虑: (1)mysql的3306 端口是否开启?是否没有更改端口号? (2)mysql 是否允许3306 被外网访问? (3)linux 是否已经开 ...

  9. frp内网 穿透映射使内网svn可外网访问

    起因 公司svn目前部署在内网服务器上,现在想在家中也可以使用,因此需要外网访问内网的工具 经过 使用过几个产品: utools,一个小巧的windows下的工具,内网映射只是它的一个小功能,支持tc ...

  10. docker kafka 外网访问不到

    linux虚拟机中的kafka docker 容器外网显示: 原因: kafka的外网IP端口配置参数设置错误. 原-->设置了容器的IP端口. 改-->设置宿主机的ip以及宿主机上的端口 ...

随机推荐

  1. 解密Prompt系列31. LLM Agent之从经验中不断学习的智能体

    Agent智能体的工作流可以简单分成两种:一种是固定的静态工作流,一种是智能体自主决策的动态工作流. 静态流程的Agent举几个例子,例如新闻热点追踪推送Agent,每日新论文摘要总结Agent,它们 ...

  2. Javascript高级程序设计第五章 | ch5 | 阅读笔记

    基本引用类型 Date 在不给定时间的情况下创建Date实例,创建的对象将保存当前的日期和时间. 要基于其他时间创建Date对象,必须传入其毫秒时表示 Date.parse() 月/日/年(5/21/ ...

  3. nordic的nrf52系列——ADC在使用时如何校准增益误差(基于SDK)

    简介:ADC在实际使用的时候都要进行误差校准,那Nordic的nrf52系列如何进行校准,如果不校准又有什么影响尼,接下来我将通过实验进行测试,验证不校准和校准的影响(本测试的基础是,默认输入阻抗和采 ...

  4. org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available es端口号及集群名称

    org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are availa ...

  5. 引入feign注入报错 org.springframework.beans.factory.NoSuchBeanDefinitionException解决

    引入feign注入报错 org.springframework.beans.factory.NoSuchBeanDefinitionException解决 [172.16.22.215] out: C ...

  6. python 方法调用另一个方法报错,捕获的异常只有message,优化为trackback捕获详细的报错信息

    A方法加了try...expect... B方法也加了try....expect... B方法调用了A方法,A方法查找元素,找不到报超时异常,实际B捕获到的异常,只有message\n,没有办法看出是 ...

  7. 利用Vue做一个小购物车

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. 【论文阅读】RAL2022: Make it Dense: Self-Supervised Geometric Scan Completion of Sparse 3D LiDAR Scans in Large Outdoor Environments

    0. 参考与前言 论文链接:https://ieeexplore.ieee.org/document/9812507 代码链接:https://github.com/PRBonn/make_it_de ...

  9. 转-tomcat在控制台打印时乱码

    描述 使用windows的控制台启动tomcat (8.5),Tomcat终端打印出现乱码,在CSDN上找到一个简单有效的解决办法,在此记录. 解决方案 找到Tomcat的根目录下的 /conf/lo ...

  10. 基础篇:Stable Diffusion 基础原理详述

    [基础篇]Stable Diffusion 基础原理详述 前言 我认为学习 ComfyUI 应该先从理论学起. 与传统绘图工具(如 Photoshop 或 Figma)相比,AI 绘图工具有着显著不同 ...