注釋原本軟件源
gzip /etc/apt/sources.list
添加阿里軟件源
vim /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
更新軟件源
apt update
apt install ansible
apt install python-pip
pip install docker
打開 ansible 配置文件?/etc/ansible/ansible.cfg
vi /etc/ansible/ansible.cfg
取消第71行的 # 注釋
#取消前#host_key_checking = False#取消后host_key_checking = False
保存退出
信任 Docker 的 GPG 公鑰
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
添加軟件倉庫:
add-apt-repository \
? "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
? $(lsb_release -cs) \
stable"
安裝指定版本的docker-ce
apt update
apt install docker-ce=5:18.09.9~3-0~ubuntu-xenial
三臺(tái)主機(jī)都需要配置 docker
# 創(chuàng)建目錄mkdir /etc/docker# 創(chuàng)建配置文件vi? /etc/docker/daemon.json
配置文件具體內(nèi)容
{"insecure-registries": ["192.168.1.10"],"registry-mirrors": ["https://4wmjwi37.mirror.aliyuncs.com"],"log-driver":"json-file","data-root":"/data/docker","log-opts": {"max-size":"10m","max-file":"3"}}
配置文件解析
內(nèi)網(wǎng)http鏡像倉庫地址 192.168.1.10
外網(wǎng)鏡像加速地址
日志格式
數(shù)據(jù)目錄(/data數(shù)據(jù)目錄不要直接使用root系統(tǒng)盤,使用掛載的數(shù)據(jù)盤)
日志具體配置
啟動(dòng)docker
systemctl enable docker && systemctl start docker
在控制機(jī)上進(jìn)行以下操作,也就是安裝了 ansible 的主機(jī)上
配置hosts
cd /root/tpw3.10.1vi hosts#將hosts當(dāng)中的 base、redis、mysql 主機(jī)組中的三臺(tái)主機(jī)的用戶名、密碼修改為實(shí)際部署使用的三臺(tái)主機(jī)對應(yīng)的用戶名、密碼#將hosts當(dāng)中的 service、web 主機(jī)組中的一臺(tái)主機(jī)的用戶名、密碼修改為實(shí)際部署使用的三臺(tái)主機(jī)中其中一臺(tái)的用戶名、密碼,后端服務(wù)會(huì)部署在 service 主機(jī)組的主機(jī)上,前端會(huì)部署在 web 主機(jī)組的主機(jī)上
開始部署
cd /root/tpw3.10.1
ansible-playbook main.yaml -i hosts
等待執(zhí)行完成即可
二、單節(jié)點(diǎn)容器部署
上傳壓縮包
例如:上傳壓縮包到 /root 目錄
ls /root/rpm.tar.gz /root/tpw3.10.1.tar.gz
解壓
cd /root
tar xf rpm.tar.gz
tar xf tpw3.10.1.tar.gz
安裝docker-ce-19.03.5
cd /root/rpm/docker-ce/
yum localinstall *.rpm -y
安裝anshible
cd /root/rpm/ansible/
yum localinstall *.rpm -y
安裝 pip
cd /root/rpm/pip/
yum localinstall *.rpm -y
安裝websocket-client-0.57.0
cd /root/rpm/websocket-client-0.57.0/
pip install websocket_client-0.57.0-py2.py3-none-any.whl
安裝docker-4.3.1
cd /root/rpm/docker-4.3.1/
pip install docker-4.3.1-py2.py3-none-any.whl
若安裝不成功,可以手動(dòng)依次安裝,注意requests倒數(shù)第二個(gè)安裝,docker最后安裝。
pip install certifi-2021.5.30-py2.py3-none-any.whl
pip install chardet-4.0.0-py2.py3-none-any.whl
......
pip install requests-2.26.0-py2.py3-none-any.whl
pip install docker-4.3.1-py2.py3-none-any.whl
打開 ansible 配置文件?/etc/ansible/ansible.cfg
vi /etc/ansible/ansible.cfg
取消第71行的 # 注釋
#取消前#host_key_checking = False#取消后host_key_checking = False
保存退出
三臺(tái)主機(jī)都需要配置 docker
# 創(chuàng)建目錄mkdir /etc/dockermkdir -p /data/docker# 創(chuàng)建配置文件vi? /etc/docker/daemon.json# 測試docker是否安裝成功docker ps
配置文件具體內(nèi)容
{"insecure-registries": ["192.168.1.10"],"registry-mirrors": ["https://4wmjwi37.mirror.aliyuncs.com"],"log-driver":"json-file","data-root":"/data/docker","log-opts": {"max-size":"10m","max-file":"3"}}
配置文件解析
內(nèi)網(wǎng)http鏡像倉庫地址 192.168.1.10 若沒有則刪除本行
外網(wǎng)鏡像加速地址
日志格式
數(shù)據(jù)目錄(/data數(shù)據(jù)目錄不要直接使用root系統(tǒng)盤,使用掛載的數(shù)據(jù)盤)
日志具體配置
啟動(dòng)docker
systemctl enable docker && systemctl start docker
systemctl status firewalld
若顯示Active: inactive (dead),表示防火墻已關(guān)閉,可以繼續(xù)執(zhí)行下一步。
cd /root/tpw3.10.1/import_images/files
ls | awk '{print "docker load -i "$1}' | bash
配置hosts
cd /root/tpw3.10.1vi hosts#將hosts當(dāng)中的 all 主機(jī)組中的主機(jī)的用戶名、密碼修改為實(shí)際部署使用的主機(jī)對應(yīng)的用戶名、密碼
開始部署
cd /root/tpw3.10.1
ansible-playbook main.yaml -i hosts
等待執(zhí)行完成即可