Linux 离线安装docker和docker-compose

前言

  • 公司有 docker 和 docker-compose 离线包安装部署的需求,本文应运而生
  • 撰写时间:2024-06-07(初稿)

1 应用版本

  • docker:20.10.7, build f0df350
  • docker-compose:1.25.1

2 物料准备

  • 服务器账号/密码
  • docker安装包:docker-20.10.7.tgz
  • docker 服务的配置文件:docker.service
  • docker 镜像加速配置:daemon.json
  • docker-compose文件:docker-compose-linux-x86_64

(本文所需的离线安装资源均已上传到 《docker和docker-compose离线安装包》 ,下载即可直接使用)

3 docker安装

3.1 docker安装步骤

shell 复制代码
## 进入 /home 目录中
$ cd /home

## 创建 docker-data 文件夹(自定义docker容器路径,我写的配置文件里也已指向到该目录)
$ mkdir docker-data

## 创建软件包目录
$ mdkir /home/docker/soft

## 把离线安装包下的四个资源解压出来,并拖到 /home/docker/soft 文件夹下
## 进入软件包目录
$ cd /home/docker/soft

## 解压 docker 程序文件
$ tar -zxvf docker-20.10.7.tgz

## 将解压出来的 docker 程序文件移到 /usr/bin/ 目录下
$ mv docker/* /usr/bin/

## 将 docker.service 复制到 /etc/systemd/system 目录下,覆盖原文件
$ cp docker.service /etc/systemd/system/

## 给 docker.service 文件添加权限
$ chmod 777 /etc/systemd/system/docker.service

## 启动 docker 
$ systemctl start docker

## 设置开机启动 docker
$ systemctl enable docker.service

## 将 daemon.json 文件 复制到 /etc/docker 目录下
$ mv daemon.json /etc/docker/

## 系统重新加载 daemon.json 配置文件
$ systemctl daemon-reload

## 重启 docker
$ systemctl restart docker

3.2 验证 docker 安装是否成功

shell 复制代码
## 查看 docker 状态
$ systemctl status docker

出现以下提示,即为安装成功。

4 docker-compose 安装

4.1 docker-compose安装步骤

shell 复制代码
## 进入软件包目录
$ cd /home/docker/soft

## 将 docker-compose-linux-x86_64 文件 移到 /usr/local/bin/ 目录下,并修改文件名为 docker-compose
$ mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose

## 给 docker-compose 文件添加权限
chmod u+x /usr/local/bin/docker-compose

4.2 验证 docker-compose 安装是否成功

shell 复制代码
## 查看 docker-compose 版本号
$ docker-compose -v

出现以下提示,即为安装成功。

相关推荐
Christal_pyy5 分钟前
树莓派4基于Debian GNU/Linux 12 (Bookworm)添加多个静态ipv4网络
linux·网络·debian
csbDD1 小时前
2025年网络安全(黑客技术)三个月自学手册
linux·网络·python·安全·web安全
Natsuagin3 小时前
轻松美化双系统启动界面与同步时间设置(Windows + Ubuntu)
linux·windows·ubuntu·grub
我们的五年4 小时前
【Linux网络编程】应用层协议HTTP(请求方法,状态码,重定向,cookie,session)
linux·网络·http
_院长大人_4 小时前
Docker Mysql 数据迁移
mysql·adb·docker
我们的五年5 小时前
【Linux网络】TCP/IP地址的有机结合(有能力VS100%???),IP地址的介绍
linux·运维·网络·tcp/ip
davenian6 小时前
< OS 有关 > Ubuntu 24 SSH 服务器更换端口 in jp/us VPSs
linux·ubuntu·ssh
诚信爱国敬业友善7 小时前
GUI编程(window系统→Linux系统)
linux·python·gui
sekaii7 小时前
ReDistribution plan细节
linux·服务器·数据库
YH_DevJourney7 小时前
Linux-C/C++《C/8、系统信息与系统资源》
linux·c语言·c++