Docker容器配置远程登录

前言

docker 的网络模式主要有三种,bridge、host、none;

  • pridge是docker安装后自动创建的虚拟网卡,创建容器时默认使用此模式。
  • host是指容器与宿主机共用宿主机的网络
  • none是指不创建网络
  • 查看docker的网络模式docker network ls

docker 默认的网卡不支持固定ip,需自定义网络,使用自定义的网络来固定ip

  • 创建自定义网络docker network create
  • 删除自定义网络docker network rm
  • 查看网卡信息docker network inspect

1、创建自定义网络

[root@docker ~]# docker network create --subnet=172.127.0.0/24 --gateway=172.127.0.1 docker-br0
  • --subbet Ip地址
  • --gateway 网关
  • docker-br0 是自定义网络名称

2、创建容器

[root@docker /]# docker run -i -d -h oracledb --name oracle11g --network docker-br0 --ip 172.127.0.100 -p 1122:22 -p 1121:1521 --privileged=true centos:7 /usr/sbin/init
  • -i 交互模式
  • -d 后端运行
  • -h 容器的hostname
  • --network 网卡
  • --ip IP地址
  • -p 端口映射
  • --privileged=true 和 /usr/sbin/init 为特权模式参数

3、进入容器安装ssh服务及必要的依赖包

[root@docker /]# docker exec -it oracle11g /bin/bash
[root@oracledb /]# yum -y update # 更新yum
[root@oracledb /]# yum -y install openssl openssh-server openssh-clients initscripts vim zip unzip wget net-tools

4、修改ssh服务配置文件

[root@oracledb /]# vim /etc/ssh/sshd_config
  • 取消PermitRootLogin yes的注释

5、启动sshd服务

[root@oracledb /]# netstat -lnp | grep 22
[root@oracledb /]# systemctl restart sshd # 重启sshd服务
[root@oracledb /]# systemctl enable sshd # 开机启动sshd服务

6、配置容器的root用户密码

7、验证

  • 查看宿主机1122端口,已监听

  • xshell远程连接测试

  • 使用宿主机的1122端口远程访问

Docker容器配置远程登录的更多相关文章

  1. Docker实现CentOS容器SSH远程登录

    Docker实现CentOS容器SSH远程登录 https://blog.csdn.net/A632189007/article/details/78625378 这里根据Dockerfile方式构建 ...

  2. 使用pipework将Docker容器配置到本地网络环境中

    使用pipework将Docker容器配置到本地网络环境中 需求 在使用Docker的过程中,有时候我们会有将Docker容器配置到和主机同一网段的需求.要实现这个需求,我们只要将Docker容器和主 ...

  3. docker容器配置独立ip

    一般安装docker后都会通过端口转发的方式使用网络,比如 “-p 2294:22” 就将2294抓发到22端口来提供sftp服务,这样使用起来没有问题.但端口号很难记忆,如果前边有nginx等抓发工 ...

  4. Ubuntu安装MySQL配置远程登录、utf8mb4字符集

    2019/11/19, Ubuntu Server 18.04,MySQL 5.7 摘要:Ubuntu Server 18.04 安装MySQL 5.7 并配置远程登录.utf8mb4字符集 由于My ...

  5. PhpStorm连接Docker容器配置xdebug断点调试

    本教程主要演示xdebug在PhpStorm中配置方法. 一.环境说明 1.Mac笔记本(本教程演示过程使用的是Mac OS操作系统,和windows环境是有区别的,这一点需要特别注意): 2.在Ma ...

  6. Ubuntu编译安装HAprox+Keepalived+MySQL负载高可用架构(结合Docker容器配置)

    系统环境:Ubuntu16.04(Docker容器) 架构环境: Keepalived/HAproxy MASTER: 172.17.0.4 Keepalived/HAproxy BACKUP: 17 ...

  7. 通过yum在centos安装mysql并配置远程登录

    前言 前天按照Oracle上的文档装了一遍mysql,选了最新8.0的版本,后来出现一些问题,网上搜答案,出来的基本还是5.x版本的解决方案,并不适用8.0版本.然后我就去看了一下公司的正式环境买的阿 ...

  8. 工具系列 | PHPSTROM 连接Docker容器 && 配置XDEBUG调试

    Docker 客户端配置 PHPSTROM 配置 选择连接 容器日志 配置Xdebug 开启Debug模式 打断点 浏览器访问该项目地址:http://wiot.frp.tinywan.top/

  9. docker容器配置hosts

    在mac开发的时候,docker容器没有配置hosts,但是mac本机配置了hosts,这个本机的hosts配置对docker容器里面的所有容器都适用,但是到了linux的时候反而不适用了 可以通过下 ...

随机推荐

  1. .NET如何快速比较两个byte数组是否相等

    目录 前言 评测方案 几种不同的方案 For循环 Memcmp 64字长优化 SIMD Sse Avx2 SequenceCompare 总结 参考文献 前言 之前在群里面有群友问过一个这样的问题,在 ...

  2. Go xmas2020 学习笔记 08、Functions, Parameters & Defer

    08-Functions, Parameters. functions. first class. function signatures. parameter. pass by value. pas ...

  3. 学习打卡——Mybatis—Plus

    今天看完了Mybatis-Plus的视频,在某些方面来看MP确实简化了很多操作,比如自动生成代码等等.学习过程的代码实例也到同步到了gitee和github

  4. JavaWeb学习day1-web入门&服务器安装

    初步了解了web的发展历程,对比分析学习了动态页面与静态页面的优缺点. 选择安装使用最广泛的Tomcat 安装流程: 1.打开官网:https://tomcat.apache.org/ 2.选择下载版 ...

  5. go - 内存分配机制详解

    一般程序的内存分配,从高位到低位依次为 全局静态区:用于存储全局变量.静态变量等:这部分内存在程序编译时已经分配好,由操作系统管理,速度快,不易出错. 栈:函数中的基础类型的局部变量:由程序进行系统调 ...

  6. JavaScript基础第05天笔记

    JavaScript基础第05天笔记 1 - 作用域 1.1 作用域概述 通常来说,一段程序代码中所用到的名字并不总是有效和可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域.作用域的使用提 ...

  7. IP协议/地址(IPv4&IPv6)概要

    IP协议/地址(IPv4&IPv6)概要 IP协议 什么是IP协议 IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议. [1] 协议的特征 无连 ...

  8. Python 函数进阶-高阶函数

    高阶函数 什么是高阶函数 高阶函数就是能够把函数当成参数传递的函数就是高阶函数,换句话说如果一个函数的参数是函数,那么这个函数就是一个高阶函数. 高阶函数可以是你使用def关键字自定义的函数,也有Py ...

  9. netty系列之:netty中的核心解码器json

    目录 简介 java中对json的支持 netty对json的解码 总结 简介 程序和程序之间的数据传输方式有很多,可以通过二进制协议来传输,比较流行的像是thrift协议或者google的proto ...

  10. ucore lab3 虚拟内存管理 学习笔记

    做个总结,这节说是讲虚拟内存管理,大部分的时间都在搞SWAP机制和服务于此机制的一些个算法.难度又降了一截. 不过现在我的电脑都16G内存了,能用完一半的情景都极少见了,可能到用到退休都不见得用的上S ...