1 准備階段(docker)
1.1 卸載舊版本
如果電腦上已經存在docker,需要先卸載可能存在的舊版本:
1. 刪除某軟件,及其安裝時自動安裝的所有包
sudo apt-get autoremove docker docker-ce docker-engine docker.io containerd runc
2. 刪除docker其他沒有沒有卸載
dpkg -l | grep docker dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P # 刪除無用的相關的配置文件
1.2 下載docker安裝包
1、去官網下載docker 安裝二進制包,選擇適合自己的版本。這里下載的是docker-19.03.3.tgz,在centos7中安裝(cento6無法使用,提示linux版本內核版本太低)
下載地址:https://download.docker.com/linux/static/stable/x86_64/
2、復制docker-19.03.3.tgz到服務器上
2、安裝和缺載
在docker-19.03.3.tgz目錄創建文件
2.1 准備docker.service 系統配置文件
1、准備配置文件
vi docker.service

docker.service [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID # Having non-zero Limit*s causes performance problems due to accounting overhead # in the kernel. We recommend using cgroups to do container-local accounting. LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity # Uncomment TasksMax if your systemd version supports it. # Only systemd 226 and above support this version. #TasksMax=infinity TimeoutStartSec=0 # set delegate yes so that systemd does not reset the cgroups of docker containers Delegate=yes # kill only the docker process, not all processes in the cgroup KillMode=process # restart the docker process if it exits prematurely Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
2.2 准備安裝腳本和缺載腳本
1、安裝腳本 install.sh
vi install.sh

#!/bin/sh echo '解壓tar包...' sudo tar -xvf $1 echo '將docker目錄移到/usr/bin目錄下...' sudo cp docker/* /usr/bin/ echo '將docker.service 移到/etc/systemd/system/ 目錄...' sudo cp docker.service /etc/systemd/system/ echo '添加文件權限...' sudo chmod +x /etc/systemd/system/docker.service echo '重新加載配置文件...' sudo systemctl daemon-reload echo '啟動docker...' sudo systemctl start docker echo '設置開機自啟...' sudo systemctl enable docker.service echo 'docker安裝成功...' docker -v
2、卸載腳本 uninstall.sh
vi uninstall.sh

#!/bin/sh echo '刪除docker.service...' sudo rm -f /etc/systemd/system/docker.service echo '刪除docker文件...' sudo rm -rf /usr/bin/docker* echo '重新加載配置文件' sudo systemctl daemon-reload echo '卸載成功...'
2.3 安裝
此時目錄為:(只需要關注docker-19.03.3.tgz、docker.service、install.sh、uninstall.sh即可)
執行腳本
sh install.sh docker-19.03.3.tgz
2.4 缺載
如果你想卸載docker,此時執行腳本 sh uninstall.sh
即可,執行過程如下:
sh uninstall.sh
3 docker-compose
3.1 下載地址 https://github.com/docker/compose/releases
3.2上傳到服務器,將文件轉移至/usr/local/bin/
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
3.3添加權限
chmod +x /usr/local/bin/docker-compose
測試:docker-compose -v