docker多容器間免密集羣搭建

docker多容器間免密集羣搭建


從雲上拉一個7.5版本的contos鏡像

[root@myserver ~]# docker pull centos:7.5.1804

下拉完成鏡像
查看當前鏡像

[root@myserver ~]# docker images

查看鏡像
打開三個xshell窗口,每個窗口各執行一條

[root@myserver ~]# docker run -i -t --name Master -h Master -p 50070:50070 centos:7.5.1804 /bin/bash
[root@myserver ~]# docker run -i -t --name Slaver1 -h Slaver1 centos:7.5.1804 /bin/bash
[root@myserver ~]# docker run -i -t --name Slaver2 -h Slaver2 centos:7.5.1804 /bin/bash

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
下面操作三臺都要運行
service安裝

[root@Master /]# yum install -y initscripts

ifconfig安裝

[root@Master /]# yum install -y net-tools.x86_64

vim安裝

[root@Master /]# yum install -y vim

安裝ssh客戶端

[root@Master /]# yum install -y openssh-clients

安裝ssh服務器

[root@Master /]# yum install -y openssh-server

生成祕鑰

[root@Master /]# ssh-keygen 

一路回車
在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述
移動到.ssh目錄下

[root@Master /]# cd ~/.ssh 

將本機祕鑰輸入到authorized_keys文件

[root@Master .ssh]# cat id_rsa.pub > authorized_keys
[root@Master .ssh]# cat authorized_keys

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
添加一個寄宿主機xshell窗口
生成寄宿主機祕鑰

[root@myserver ~]# ssh-keygen

一路回車
在這裏插入圖片描述
查看寄宿主機祕鑰

[root@myserver ~]# cat ~/.ssh/id_rsa.pub

在這裏插入圖片描述
將四個祕鑰全部複製到三臺容器的authorized_keys

[root@Master .ssh]# vim authorized_keys

將原來的祕鑰刪除,把上面四個複製進去。

以上操作完成後,以下指令直接一路回車下去

[root@Master .ssh]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
[root@Master .ssh]# ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
[root@Master .ssh]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ecdsa_key
[root@Master .ssh]# ssh-keygen -t rsa -f /etc/ssh/ssh_host_ed25519_key
[root@Master .ssh]# cd /

查看三臺容器的ip

[root@Master /]# ifconfig

在這裏插入圖片描述
創建一個sh文件

[root@Master /]# vim run.sh

將一下命令全部寫入run.sh

#!/bin/bash
echo "172.18.0.2        Master"  >> /etc/hosts
echo "172.18.0.3        Slaver1" >> /etc/hosts
echo "172.18.0.4        Slaver2" >> /etc/hosts
/usr/sbin/sshd
source /etc/profile

改變文件權限

[root@Master /]# chmod +x run.sh

運行run.sh文件

[root@Master /]# ./run.sh

進行測試

[root@Master /]# ssh Slaver1

在這裏插入圖片描述
退回到原來容器內

[root@Slaver1 ~]# exit

在這裏插入圖片描述
三臺容器全部退出

[root@Master /]# exit

爲主機保存三個容器的映射,方便主機訪問三個容器

[root@myserver ~]# vim /etc/hosts

將三個ip及映射添加進去,裏面原本的東西不要動

172.18.0.2	Master
172.18.0.3	Slaver1
172.18.0.4	Slaver2

隨後保存三個鏡像

[root@myserver ~]# docker commit Master master:v1.0
[root@myserver ~]# docker commit Slaver1 slaver1:v1.0
[root@myserver ~]# docker commit Slaver2 slaver2:v1.0

啓動前將剛纔的容器刪掉

[root@myserver ~]# docker stop Master
[root@myserver ~]# docker rm Master
[root@myserver ~]# docker stop Slaver1
[root@myserver ~]# docker rm Slaver1
[root@myserver ~]# docker stop Slaver2
[root@myserver ~]# docker rm Slaver2

然後分別啓動

[root@myserver ~]# docker run -it --name Master --hostname Master -p 50070:50070 master:v1.0
[root@myserver ~]# docker run -it --name Slaver1 --hostname Slaver1 slaver1:v1.0
[root@myserver ~]# docker run -it --name Slaver2 --hostname Slaver2 slaver2:v1.0

每個容器分別執行run.sh

[root@Master /]# ./run.sh

再測試

[root@Master /]# ssh Slaver1

測試成功
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章