1.准備軟件:

docker安裝包,下載地址:https://download.docker.com/linux/static/stable/x86_64/

下載需要的版本到本地,上傳到服務器上
2.一鍵安裝命令:install-docker.sh
#!/bin/sh usage(){ echo "使用方法: $0 FILE_NAME_DOCKER_CE_TAR_GZ" echo " $0 docker-18.06.3-ce.tgz" echo "Get docker-ce binary from: https://download.docker.com/linux/static/stable/x86_64/" echo "eg: wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz" echo "" } SYSTEMDDIR=/usr/lib/systemd/system SERVICEFILE=docker.service DOCKERDIR=/usr/bin DOCKERBIN=docker SERVICENAME=docker if [ $# -ne 1 ]; then usage exit 1 else FILETARGZ="$1" fi if [ ! -f ${FILETARGZ} ]; then echo "Docker binary tgz files does not exist, please check it" echo "Get docker-ce binary from: https://download.docker.com/linux/static/stable/x86_64/" echo "eg: wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz" exit 1 fi echo "##unzip : tar xvpf ${FILETARGZ}" tar xvpf ${FILETARGZ} echo echo "##binary : ${DOCKERBIN} copy to ${DOCKERDIR}" cp -p ${DOCKERBIN}/* ${DOCKERDIR} >/dev/null 2>&1 which ${DOCKERBIN} echo "##systemd service: ${SERVICEFILE}" echo "##docker.service: create docker systemd file" cat >${SYSTEMDDIR}/${SERVICEFILE} <<EOF [Unit] Description=Docker Application Container Engine Documentation=http://docs.docker.com After=network.target docker.socket [Service] Type=notify EnvironmentFile=-/run/flannel/docker WorkingDirectory=/usr/local/bin ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock 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=on-failure [Install] WantedBy=multi-user.target EOF echo "" systemctl daemon-reload echo "##Service status: ${SERVICENAME}" systemctl status ${SERVICENAME} echo "##Service restart: ${SERVICENAME}" systemctl restart ${SERVICENAME} echo "##Service status: ${SERVICENAME}" systemctl status ${SERVICENAME} echo "##Service enabled: ${SERVICENAME}" systemctl enable ${SERVICENAME} cat >/etc/docker/daemon.json <<EOF { "registry-mirrors": ["http://oest4bnp.mirror.aliyuncs.com/"] } EOF swapoff -a iptables -P FORWARD ACCEPT sysctl --system systemctl daemon-reload systemctl restart docker.service echo "## docker version" docker version
以上文件可以按自己需求進行修改:該文件對應的docker.service文件及daemon.json文件可以修改
3.登錄服務器,跳轉到壓縮包所在文件,創建shell命令文件:
touch install-docker.sh

4.編輯文件:(可以直接用以下命令,vi命令沒有文件時會直接創建新文件)
vi install-docker.sh
5.復制上面代碼到install-docker.sh,保存退出,給文件賦權限
chmod +x install-docker.sh
6.運行shell命令
./install-docker.sh docker-18.06.1-ce.tgz

7. 運行完成后查看docker版本:

如圖顯示,則dockers安裝成功!
