免费资源网 – https://freexyz.cn/
目录Docker 创建centos容器集群并实现远程登录0.拉取Docker镜像(Centos7官方版)1.搭建网桥加入网络2.配置机器网络环境并加入ssh3. 查看容器中自启项内容4. 参考文章:
Docker 创建centos容器集群并实现远程登录
0.拉取Docker镜像(Centos7官方版)
拉取官方镜像(这个镜像里面几乎什么都没有,很多依赖库需要自己配置,实实在在的“纯净版”。关注我,下期教你用ISO镜像文件使用dockerfile制作究极完整版docker镜像)
docker pull centos:centos71.搭建网桥加入网络
创建docker bridge网桥
搭建网桥可以方便管理结点,并且让结点同时位于同一个网段下
sudo docker network create NodeNetWork创建三个不同端口的结点容器
zwb@test-algo:~$ sudo docker run -itd –restart=always –hostname node01 –name Node01 -p 50001:22 -v /data/sda/sharedata:/share –network NodeNetWork –privileged=true centos:centos7 /sbin/init zwb@test-algo:~$ sudo docker run -itd –restart=always –hostname node02 –name Node02 -p 50002:22 -v /data/sda/sharedata:/share –network NodeNetWork –privileged=true centos:centos7 /sbin/init zwb@test-algo:~$ sudo docker run -itd –restart=always –hostname node03 –name Node03 -p 50003:22 -v /data/sda/sharedata:/share –network NodeNetWork –privileged=true centos:centos7 /sbin/init # 参数解释: # -itd # 选项 选项简写 说明 # –detach -d 在后台运行容器,并且打印容器id。 # –interactive -i 即使没有连接,也要保持标准输入保持打开状态,一般与 -t 连用。 # –tty -t 分配一个伪tty,一般与 -i 连用。 # –restart=always 机器启动时自启动 # –hostname 初始化的hostname # -p 50001:22 端口映射 宿主机端口:容器端口这里为22表示容器内ssh端口 # –privileged=true 通过特权模式进入docker,不仅可以使用systemctl命令(centos 7系统),还可以开启ssh服务 # –network NodeNetWork 将容器结点加入网桥中 # 注意:在 Linux Docker中无法使用 systemd(systemctl) 相关命令的原因是 1号进程不是 init ,而是其他例如 /bin/bash ,所以导致缺少相关文件无法运行。(System has not been booted with systemd as init system (PID 1). Cant operat #解决方案:/sbin/init并且–privilaged=true一定要加上2.配置机器网络环境并加入ssh
以Node01为例子,进入结点容器并配置网络环境并加入ssh
(base) zwb@test-algo:~$ sudo docker exec -it Node01 /bin/bash [root@aa92cb71e3ab /]# yum -y install net-tools.x86_64 Failed to set locale, defaulting to C.UTF-8 CentOS Linux 8 – AppStream 26 B/s | 38 B 00:01 Error: Failed to download metadata for repo appstream: Cannot prepare internal mirrorlist: No URLs in mirrorlist可以看到我们在安装网络工具包的时候出错了,上面的报错信息意思是,从仓库 ‘appstream’ 下载元数据失败:由于镜像列表中没有 URL,不能准备内部镜像列表。
免费资源网 – https://freexyz.cn/
© 版权声明
THE END
暂无评论内容