【容器----Docker】Docker虚拟化CentOS系统

环境

操作系统:CentOS7.5

Docker:18.09.6

一、虚拟CentOS系统

1.运行一个centos7镜像

注意:要加上-d,如果不加,这个当退出的时候,发现没有docker镜像了。

docker run --rm -d -i -t centos:centos7.5.1804 /bin/bash

自动从镜像站拉取 

查看docker运行的镜像

docker ps -a

2.进入运行的Linux操作系统

第一步中使用的后台静默的方式运行,通过docker attach 访问该容器,后面加上容器ID(CONTAINER_ID)

方式1
docker attach 5f8f885a61ae # exit的时候会导致容器停止

方式2
docker exec -it bb2 /bin/sh #exit时容器不会停止

方式3
docker inspect --format "{{.State.Pid}}" <ID>
nsenter -t <pid> -u -i -n

3.初始化安装

进入CentOS镜像系统后是没有一些组件的,需要自己安装

# ifconfig
yum search ifconfig
yum install net-tools.x86_64

# wget
yum -y install wget

# vim
yum -y install vim-enhanced

 4.修改密码

passwd root

改成自己的密码

5.安装sshd

 yum install passwd openssl openssh-server -y

执行命令

ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''  
ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N '' 

修改配置文件支持ssh连接

vim /etc/ssh/sshd_config

默认是被注释掉的,放开注释 

PermitRootLogin yes

然后启动sshd

/usr/sbin/sshd -D

6.保存镜像

另开一个终端

docker ps -all

提交docker镜像仓库,注意修改仓库id

docker commit 5f8f885a61ae centos7.5-ssh

检查是否有新的镜像

 docker images

7.删除镜像

首先镜像必须停止,然后查询所有镜像,通过删除repository或者image_id

docker rmi 5589c27418fc

8.在服务器上基于新创建的镜像启动新的容器

查看正在运行的容器

停止容器

docker rm -f 5f8f885a61ae

启动新镜像容器

docker run -d -p 10022:22 node1:latest /usr/sbin/sshd -D

查看端口是否映射成功

docker ps -all

docker port c453d011c5a8

 

附注:

 #退出,但不停止容器
Ctrl+P+Q
#回到Docker下面,停止容器 (容器ID即:CONTAINER ID)
docker stop <容器ID>
#提交当前容器到镜像
docker commit <容器ID> <NAME/VERSION>
#启动新容器,并且进行端口映射(刚才提交的镜像id即:通过docker images看到的REPOSITORY: REPOSITORY 即:node1:latest)
docker run -itd -p 10022:22 <刚才提交的镜像ID>  /bin/bash

9.xshell连接

使用宿主机ip:10022 

用户名:root

密码:自己设置的密码
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值