使用docker安装虚拟机并打开ssh连接
一、需求
最近有个需求,要连接很多个linux系统进行测试软件功能,但是我这里只有几个虚拟机,所以需要使用docker来安装几十个或者上百个虚拟机来进行测试。
二、安装docker
这里就不演示怎么安装了,网上有很多,也可以看这个https://www.runoob.com/docker/centos-docker-install.html,这个上面有多种机器安装docker的教程。
三、具体步骤
1、拉取centos镜像
docker pull centos:centos7
2、查看/启动镜像
#查看镜像
docker images
#启动镜像
docker run -itd --name my-centos centos:centos7
3、进入镜像
#获取容器的id
docker ps
#进入容器内部
docker exec -it 9bd5d8e8a3e7 /bin/bash
4、为容器安装软件
#安装ssh
yum install -y openssh-server openssh-clients
#修改密码命令
yum install -y passwd
#service命令
yum install -y initscripts
5、修改密码
#修改密码命令
passwd
6、修改sshd_config配置文件
#修改文件
vi /etc/ssh/sshd_config #找到UsePAM参数,设置为no
7、重启ssh并退出容器
#重启ssh
service sshd start #这里会报错
System has not been booted with systemd as init system (PID ). Can't operate.
Failed to connect to bus: Host is down
#直接进行下面的命令就行,使用最后一步的命令启动就解决这个问题了 #退出容器
exit
8、将刚刚修改的容器保存为新的镜像
docker commit 9bd5d8e8a3e7 my-ssh-centos
9、启动新的镜像
#注意要暴露对外映射的端口 --privileged=true 和后面的 /sbin/init 必须要有,以特权模式启动容器,否则无法使用systemctl启动服务
docker run -tid --name my-ssh- -p : --privileged=true 9bd5d8e8a3e7 /sbin/init
使用docker安装虚拟机并打开ssh连接的更多相关文章
- centos安装虚拟机,桥接网络连接失败
centos安装虚拟机,桥接网络连接失败 待办 即使是虚拟机也要在网络选择网桥连接方式之后,点击连接网线才可以,虚拟机都是按照有线进行连接的.
- 安装虚拟机后无法SSH远程连接
1.安装虚拟机工具 vmware workstation 2.创建一个虚拟机,系统版本是:CentOS-6.8-x86_64-LiveDVD 3.系统安装完成后,选择网络为桥接模式,如图 4.检查主机 ...
- 在VMware15中安装虚拟机并使用Xshell连接到此虚拟机(超详细哦)
首先点击创建新的虚拟机. 此处默认, 点击下一步 默认, 点击下一步 此处可以设置你的虚拟机名称和安装位置(强烈建议不要将安装位置放在系统盘). 此处可根据自己的电脑配置来设置(建议2,4),后续可以 ...
- 怎样在nat方式的虚拟机下做ssh连接
很多人在本机做測试都是用桥接的方式让虚拟机上网. 假设ip地址紧张或者根本就不同意我们拥有一个局域网的ip.这时候便能够使用NAT方式+putty来远程操作. 第一步,打开设备-Network-更改网 ...
- Ubuntu 安装MySQL并打开远程连接
首先使用su命令切换到root账户 在用apt-get install mysql-server命令获取到MySQL的服务 等待下载安装,按照提示输入MySQL的密码 安装完成后对mysqld.cnf ...
- 本地VM安装虚拟机,使用xshell连接
首先把VM设置成上面那样 在ubuntu里面安装ssh apt-get install openssh-server 启动服务 /etc/init.d/ssh startifconfig 查看ip x ...
- Ubuntu 安装第一步,打开ssh
http://blog.csdn.net/u010447234/article/details/53557795 1.检查是否有ssh在运行 ps -e | grep ssh* 2.安装openssh ...
- Docker 安装 MySQL 并实现远程连接
获取 MySQL 镜像 docker pull mysql:5.6 查看镜像列表 docker images 启动 MySQL 镜像 docker run -itd -P mysql:5.6 bash ...
- Docker安装MySQL并使用Navicat连接
MySQL简单介绍: MySQL 是一个开放源码的关系数据库管理系统,开发者为瑞典 MySQL AB 公司.目前 MySQL 被广泛地应用在 Internet 上的大中小型网站中.由于其体积小.速度快 ...
随机推荐
- 力扣(LeetCode)按奇偶排序数组II 个人题解
给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数. 对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数:当 A[i] 为偶数时, i 也是偶数. 你可以返回任何满足上述条件的数组 ...
- 力扣(LeetCode)2的幂 个人题解
给定一个整数,编写一个函数来判断它是否是 2 的幂次方. 示例 1: 输入: 1 输出: true 解释: 20 = 1 示例 2: 输入: 16 输出: true 解释: 24 = 16 示这题是考 ...
- oracle使用parallel并行,多线程查询
insert into tmp (select /*parallel (a, 4)*/ * from plsuer.as_cdrindex_info_h partition(P_20170430) w ...
- 初识JVM内存模型
计算机内存模型 在程序运行时,CPU通过访问主存获取数据,但随着CPU的快速发展,CPU访问速度越来越高,硬件无法满足CPU的条件下,大多内存加入了高速缓存机制,不同CPU都有对应的多级(一般为三)缓 ...
- CCF-画字符-详细的注释
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...
- SpringBoot 源码解析 (十)----- Spring Boot的核心能力 - 集成AOP
本篇主要集成Sping一个重要功能AOP 我们还是先回顾一下以前Spring中是如何使用AOP的,大家可以看看我这篇文章spring5 源码深度解析----- AOP的使用及AOP自定义标签 Spri ...
- Promise.all()
Promise.all(iterable) 方法返回一个 Promise 实例,此实例在 iterable 参数内所有的 promise 都“完成(resolved)”或参数中不包含 promise ...
- Java虚拟机之栈
一.程序计数器(寄存器):PCR 作用:记住下一条JVM指令的执行地址. 特点:①线程私有的 ②不会存在内存溢出 二.虚拟机栈 1.定义 虚拟机栈:线程运行所需要的内存空间. 栈帧:一个栈帧对应一个方 ...
- vue防抖节流之v-debounce--throttle使用指南
最新封装了一个vue防抖节流自定义指令,发布到npm上,有用欢迎star,谢谢! npm地址:https://www.npmjs.com/package/v-debounce-throttle git ...
- 使用FastReport报表工具生成图片格式文档
之前我在随笔<使用FastReport报表工具生成报表PDF文档>介绍过使用FastReport.Net来根据报表模板进行生成PDF,以及随笔<使用FastReport报表工具生成标 ...