问题情境:现在有一个服务器主机,安装了docker,想给成员分配各自的容器,但不想成员通过宿主机进入容器。那么成员如何直接访问容器呢?

成员可以通过ip加端口号访问

因此,需要生成一个容器,将容器的22端口号映射到宿主机的端口号。

下面为具体操作

1.启动docker image时可以指定端口映射并设置privilege为true 

docker run -ditp 5512:22 --name=xxxx --privileged=true [imageID] /bin/bash

2.进入容器为了之后操作便捷,先进行换源(可选)RedHat系列与Debian系列操作不同,具体问题具体分析

cd /etc/apt/

mv sources.list sources.list.backup

echo "deb http://mirrors.aliyun.com/debian wheezy main contrib non-free" >> sources.list

echo "deb-src http://mirrors.aliyun.com/debian wheezy main contrib non-free" >> sources.list

echo "deb http://mirrors.aliyun.com/debian wheezy-updates main contrib non-free" >> sources.list

echo "deb-src http://mirrors.aliyun.com/debian wheezy-updates main contrib non-free" >> sources.list

echo "deb http://mirrors.aliyun.com/debian-security wheezy/updates main contrib non-free" >> sources.list

echo "deb-src http://mirrors.aliyun.com/debian-security wheezy/updates main contrib non-free" >> sources.list

3.apt-get update

4.apt-get install openssh-server (安装ssh服务)

5.install vim(没有的话)

6.vim /etc/ssh/sshd_config

将sshd_config文件中PermitRootLogin修改为yes,一般默认的话是前面加了“#”,注释了,先把#去掉,或者直接复制下面这句

PermitRootLogin yes

7.重启ssh服务/etc/init.d/ssh restart

  1. ps -e | grep ssh 查看ssh进程

9.passwd (设置新的密码,方便登录)

10.一个端口映射的容器完成,现在成员可以通过ip加端口号直接访问容器了。

docker下将容器按照端口号分配的更多相关文章

  1. docker中启动容器提示端口被占用

    docker中启动容器提示端口被占用,但是 docker ps -a 查不到信息 1.查询端口被占用的id netstat -ntpl |grep 3306 2.杀掉该id kill -9 如果kil ...

  2. Windows10系统下查看mysql的端口号并修改

    mysql的端口号默认是3306,初学者可能有时会忘记或者之前修改了默认的端口号,忘记了,或者很多时候我们一台电脑需要安装两个mysql或者想设置一个自己的喜欢的数字,那么接下来我们来看看如何查看或者 ...

  3. linux下mysql 查看默认端口号与修改端口号方法

    一.查看默认端口号 1.登录mysql [root@localhost ~]# mysql -uroot -pEnter password: 输入数据库密码: 2.使用show global vari ...

  4. Linux下使用telnet测试端口号是否开放

    telnet 127.0.0.1 80调用后,若提示bash: telnet: command not found,那么进行以下步骤: 1.检查telnet是否已经安装,或者有部分未安装: rpm - ...

  5. Linux下rsync增加SSH端口号的用法

    rsync默认使用SSH的22号端口,为了安全起见,很多机器更改了SSH默认的端口号,对应rsync命令的用法为: rsync -e 'ssh -p 1234' username@hostname:S ...

  6. Docker下mysql容器开启binlog日志(保留7天)

    现有需求开启用Docker容器启动的mysql数据库的binlog,以作为 日志记录 和 数据恢复,我们了解了MySQL的binlog日志的开启方式以及binlog日志的一些原理和常用操作,我们知道, ...

  7. windows cmd下netstat查看占用端口号的进程和程序

    其实很简单,大家可以在cmd窗口 C:\Documents and Settings\Administrator>netstat -help 显示协议统计信息和当前 TCP/IP 网络连接. N ...

  8. docker 中的mysql启动端口号总是被占用解决

    解决: 1 查 netstat -lnp|grep 3306 2 杀 kill -9 3819 3 再查 netstat -lnp|grep 3306 4 发现还有,杀不尽 5 重启docker 6 ...

  9. linux下防火墙开启某个端口号及防火墙常用命令使用

    linux防火墙常用命令 1.永久性生效,重启后不会复原 开启:chkconfigiptables on 关闭:chkconfigiptables off 2.即时生效,重启后复原 重启防火墙 方式一 ...

随机推荐

  1. BSOJ7526口胡

    直觉告诉我一般情况下,询问古怪的题都是分块,但是这一类题不太一样. 思考一个奇怪的暴力,每次询问的时候询问 \(f(1,k),f(2,k+1),f(3,k+2),...f(n-k+1,n)\),然后加 ...

  2. Spring Session原理解析

    前景提要: @EnableRedisHttpSession导入RedisHttpSessionConfiguration.classⅠ.被RedisHttpSessionConfiguration继承 ...

  3. @Autowired @Qualifier @Resource

    @Autowired 用于对Bean的属性变量,属性的setter()方法及构造方法进行标注,配合对应的注解处理器完成Bean的自动装配工作.默认按照Bean的类型进行装配. @Resource 其作 ...

  4. Java基础——类与接口

    一.类与接口的关系 1.类与类的关系 继承关系,只能单继承,不能多继承:但是可以多层继承 2.类与接口的关系 实现关系,可以单实现,也可以多实现,还可以继承一个类的同时实现多个接口 3.接口与接口的关 ...

  5. python3求200以内能被17整除的最大正整数

    for i in range(200, 17,-1): if(i%17==0): print(i) break

  6. Grafana镜像在阿里云镜像站首发上线

    阿里云镜像站体验官招募中, 在各大社区平台分享相关内容累计积分就可赢得Airpods耳机和移动硬盘等奖励,银牌体验官的奖励人数不设限哦.立即参与 简介 Grafana是一个跨平台的开源的度量分析和可视 ...

  7. JSON.parse()和JSON.stringfy()区别

    JSON.parse() 用于从一个json格式字符串解析出json类型的数据,如: 注意事项:json格式字符串必须是写在一排的,且括号外面用单引号,里面的每一个字符串用双引号 JSON.strin ...

  8. Rafy 框架:领域控制器

    本文简要说明如何使用 Rafy 框架中的领域控制器. 简介 领域控制器是 Rafy 框架中用于封装领域逻辑的主要方式. 在控制器中,开发者可以封装大量的业务逻辑,并向外暴露业务接口.内部的逻辑在实现时 ...

  9. GoldenEye

    靶机准备 将靶机ova文件导入虚拟机,并将网络模式设置为NAT 先进行ip扫描 netdiscover -r 192.168.164.0/24 kali:192.168.164.137 渗透测试 扫描 ...

  10. Java Study day3

    Day 2 遗留问题: cmd javac编译和 java执行 程序输出Hello World 遗留问题解答: 首先使用Txt记事本写一个后缀为.java的HelloWorld.java程序,直接复制 ...