欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

离线安装docker+dockercompose

程序员文章站 2022-05-15 13:09:48
...

linux离线安装docker + docker-compose
1 准备阶段(docker)
1.1 卸载旧版本
如果电脑上已经存在docker,需要先卸载可能存在的旧版本:

  1. 删除某软件,及其安装时自动安装的所有包

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

[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 docker-19.03.5.tgz
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
View Code
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添加权限
1
chmod +x /usr/local/bin/docker-compose
  测试:docker-compose -v