通过Docker创建CentOS容器的实现步骤
前言
先安装Docker,使用文内的脚本可以快速创建CentOS 7.8虚拟系统集群,并通过SSH(Secure Shell)远程工具连接。
创建桥接网络,方便容器间通信
指令格式为docker network create <网络名称 >。
docker network create test-network
列出Docker下所有网络可以看到test-network。
docker network ls

通过CentOS 7镜像创建容器
运行docker run使用阿里云镜像仓库拉取打包好的CentOS 7中文版镜(在centos:7.8.2003 镜像基础上添加了JDK8、 vim、lsof、wget、tree、python-devel、c 编译环境、SSH)像创建CentOS 7容器,系统用户名、密码分别为root和666666。
同一个主机下创建多个容器需要定义新的容器名(–name node2)和网络别名(–network-alias node2)以及映射的端口(-p 30003:22 -p 30004:80)。
docker run \ --name node1 \ --network test-network \ --network-alias node1 \ --privileged=true \ -dit \ -m 1500M \ -w ~/ \ -v /root/docker/node1:/root \ -p 30001:22 \ -p 30002:80 \ registry.cn-shanghai.aliyuncs.com/exposure/centos:7.8.2003_v1 \ /usr/sbin/init
命令中每个参数解释:
# docker run \ # --name node1 \ 指定容器名为node1 # --network test-network \ 使用名为test-network的网络 # --network-alias node1 \ 指定网络别名为node1,相当于域名 # --privileged=true \ 指定是特权容器,拥有完整root权限 # -dit \ 相当于后台运行容器(-d)、以交互模式运行容器(-i)、为容器重新分配一个伪输入终端(-t),-i和-t一般同时使用 # -m 1500M \ 限制容器使用内存上限1500兆 # -w ~/ \ 工作目录、进入容器后目录为当前用户目录 # -v /root/docker/node1:/root 将宿主机/root/docker/node1目录挂载到容器/root目录,目录下内容可以互相看到 # -p 30001:22 \ 宿主机30001端口映射为容器22端口,通过宿主机30001端口相当于访问容器22端口 # -p 30002:80 \ # registry.cn-shanghai.aliyuncs.com/exposure/centos:7.8.2003_v1 \ 使用镜像仓库以及标签/版本号 # /usr/sbin/init \ 容器启动后执行这个指令来准备软件执行的环境,包括系统的主机名、网络设定、语言、文件系统格式及其他服务的启动等
连接容器
宿主机命令行进入容器
# 进入容器 docker exec -it node1 /bin/bash # 退出容器 exit
远程连接:通过宿主机IP和端口(映射容器22端口的那个)来访问CentOS 7容器
容器间互相访问
同一网络下,容器通过网络别名(–network-alias)来互相访问。下图中连接到node2容器,在容器内可以ping通node1,网络是通的。

参考链接
到此这篇关于通过Docker创建CentOS容器的实现步骤的文章就介绍到这了,更多相关Docker创建CentOS容器 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
亲手教你Docker Compose安装DOClever的详细过程
DOClever是一个可视化免费开源的接口管理工具,DOClever前后端全部采用了javascript来作为我们的开发语言。这篇文章主要介绍了Docker Compose安装DOClever的详细过程,需要的朋友可以参考下2021-09-09
Docker 搭建私有仓库(registry、harbor)
这篇文章主要介绍了Docker 搭建私有仓库(registry、harbor),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-06-06
Docker 解决容器时间与主机时间不一致的问题三种解决方案
这篇文章主要介绍了Docker 解决容器时间与主机时间不一致的问题的相关资料,这里提供了三种方法,供大家参考,需要的朋友可以参考下2016-12-12
Docker部署Django+Mysql+Redis+Gunicorn+Nginx的实现
这篇文章主要介绍了Docker 部署 Django+Mysql+Redis+Gunicorn+Nginx,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-11-11


最新评论