离线安装docker、docker-compose

一、Docker 离线安装

  1. 下载 Docker

下载 Docker 的最新版本 docker-20.10.9.tgz 到本地。

  1. 安装 Docker

解压下载的 Docker 压缩包

tar xvf docker-20.10.9.tgz

复制 Docker 目录到 /usr/bin,使 Docker 命令可执行

cp -r docker/* /usr/bin

清理解压后的文件

rm -rf docker docker-20.10.9.tgz

  1. 配置 Docker 服务

创建 Docker 服务配置文件

sudo vim /etc/systemd/system/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

ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

LimitNOFILE=infinity

LimitNPROC=infinity

TimeoutStartSec=0

Delegate=yes

KillMode=process

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

Install

WantedBy=multi-user.target

赋予 Docker 服务文件执行权限

sudo chmod +x /etc/systemd/system/docker.service

重新加载 systemd 配置

sudo systemctl daemon-reload

启用 Docker 服务开机自启

sudo systemctl enable docker.service

启动 Docker 服务

sudo systemctl start docker

检查 Docker 服务状态

sudo systemctl status docker

  1. 添加执行权限

赋予 Docker 服务文件执行权限

sudo chmod +x /etc/systemd/system/docker.service

重新加载 systemd 配置

sudo systemctl daemon-reload

  1. 启动docker

启用 Docker 服务开机自启

sudo systemctl enable docker.service

启动 Docker 服务

sudo systemctl start docker

检查 Docker 服务状态

sudo systemctl status docker

二、Docker-Compose 离线安装

  1. 下载 Docker-Compose

下载 Docker-Compose 的最新版本 docker-compose-linux-x86_64 到本地。

  1. 安装 Docker-Compose

复制 Docker-Compose 到 /usr/local/bin

sudo cp -f ./docker-compose-linux-x86_64 /usr/local/bin/docker-compose

赋予 Docker-Compose 执行权限

sudo chmod +x /usr/local/bin/docker-compose

查看docker-compose版本

docker-compose -v

三、一键安装脚本

创建 Docker 和 Docker-Compose 一键安装脚本 install.sh

bash 复制代码
#!/bin/sh
echo 'docker开始安装...'
echo '解压tar包...'
tar -xvf ./docker-20.10.9.tgz
echo '将docker目录移到/usr/bin目录下...'
cp -f ./docker/* /usr/bin
rm -rf docker
echo '将docker.service 移到/etc/systemd/system/ 目录...'
cp -f ./docker.service /etc/systemd/system
echo '添加文件权限...'
chmod +x /etc/systemd/system/docker.service
echo '重新加载配置文件...'
systemctl daemon-reload
echo '启动docker...'
systemctl start docker
echo '设置开机自启...'
systemctl enable docker.service
if ! docker -v; then
echo "docker 安装失败..."
exit -1
fi
echo 'docker安装成功...'
 
echo '安装docker-compose...'
cp -f ./docker-compose-linux-x86_64 /usr/local/bin/docker-compose
echo '添加文件执行权限...'
chmod +x /usr/local/bin/docker-compose
if ! docker-compose -v; then
echo "docker-compose 安装失败..."
exit -1
fi
echo 'docker-compose 安装成功...'

四、一键卸载脚本

创建 Docker 和 Docker-Compose 一键安装脚本 uninstall.sh

bash 复制代码
#!/bin/sh
echo "停止所有容器服务"
docker stop $(docker ps -a -q)
echo "删除所有容器"
docker rm $(docker ps -a -q)
echo "删除docker所有镜像"
docker rmi -f $(docker images -q)
echo "停止docker服务"
systemctl stop docker
echo "删除docker.service..."
rm -rf /etc/systemd/system/docker.service
echo "删除docker文件..."
rm -rf /usr/bin/docker*
echo "重新加载配置文件"
systemctl daemon-reload
echo "卸载成功..."
 
echo "删除docker-compose"
rm -rf /usr/local/bin/docker-compose
echo "卸载成功"一、docker离线安装
相关推荐
陈桴浮海8 小时前
Kustomize实战:从0到1实现K8s多环境配置管理与资源部署
云原生·容器·kubernetes
70asunflower10 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
ShiLiu_mtx10 小时前
k8s - 7
云原生·容器·kubernetes
春日见11 小时前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
xuhe211 小时前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
7哥♡ۣۖᝰꫛꫀꪝۣℋ11 小时前
Spring-cloud\Eureka
java·spring·微服务·eureka
星火s漫天12 小时前
第一篇: 使用Docker部署flask项目(Flask + DB 容器化)
数据库·docker·flask
MonkeyKing_sunyuhua14 小时前
docker compose up -d --build 完全使用新代码打包的方法
docker·容器·eureka
醇氧14 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
技术路上的探险家14 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker