当前位置: 首页 > news >正文

docker的离线安装

docker的离线安装

一.前言

有时候我们需要在无法连接互联网的服务器上安装docker,这个时候就需要我们先下载好docker安装包,上传到服务器后,进行离线安装。本文中主要是介绍在Ubuntu 22.04操作系统中以二进制包和deb包,两种方式来安装docker。

二.二进制安装

1.下载二进制包

我们需要访问https://download.docker.com/linux/static/stable/x86_64/这个网址,在网页选择相应的版本二级制安装包进行下载。本文示例中是下载了docker-28.2.2.tgz这个版本的安装包。

2.解压安装包

我们把下载的docker-28.2.2.tgz安装包上传到服务器后,需要对该安装包进行解压操作。

tar -zxvf docker-28.2.2.tgz

3.Docker安装

(1).拷贝二进制文件

docker-28.2.2.tgz安装包解压后,我们需要把解压出来的所有二进制文件内容拷贝到/usr/bin/这个目录下。

cp -R docker/* /usr/bin/

拷贝完成后,这时我们使用docker –v命令来查看docker安装的版本信息。由于此时没有开启守护进程服务,所以docker的一些其他命令暂时还不能使用。

(2) .添加docker.service文件

docker.service文件是Docker守护进程(Docker Daemon)在Linux操作系统上使用 systemd作为初始化系统时的服务单元配置文件。docker.service文件的核心作用在于定义和控制Docker守护进程的生命周期和行为。它定义了Docker守护进程(dockerd)如何被systemd启动、停止、管理以及运行时的环境。

  • 创建docker.service文件

       我们需要在/etc/systemd/system/目录下创建一个docker.service文件。

vim /etc/systemd/system/docker.service
  • 在docker.service文件中添加内容

      在docker.service文件中添加如下内容:

[Unit]Description=Docker Application Container EngineDocumentation=https://docs.docker.comAfter=network-online.target firewalld.serviceWants=network-online.target[Service]Type=notifyExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock --selinux-enabled=false --default-ulimit nofile=65536:65536ExecReload=/bin/kill -s HUP $MAINPIDLimitNOFILE=infinityLimitNPROC=infinityLimitCORE=infinityTimeoutStartSec=0Delegate=yesKillMode=processRestart=on-failureStartLimitBurst=3StartLimitInterval=60s[Install]WantedBy=multi-user.target
  • 给docker.service文件可执行权限 

      在新建好docker.service文件后,保存退出,我们在要给该文件添加可执行的权限。

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

4.Docker服务相关命令

  • 重新加载守护进程配置
systemctl daemon-reload

  • 启动docker服务
systemctl start docker

  • 设置开机启动
systemctl enable docker

  • 查看docker服务状态
systemctl status docker

通过执行以上的一些命令后,docker已经安装完毕,可以正式使用了。例如我们可以使用docker images命令来查看docker中的镜像。

docker images

三.deb包安装

1.下载deb包

我们访问https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/这个docker官方下载地址网址。在网页选择相应版本的deb文件进行下载。

如果网络不稳定的话,我们也可以访问国内清华镜像网址https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/dists/jammy/pool/stable/amd64/来下载相应的deb文件。

本文中操作系统是Ubuntu22.04,所以下载了以下三个安装包:

1containerd.io_1.7.27-1_amd64.deb
2docker-ce-cli_28.3.0-1~ubuntu.22.04~jammy_amd64.deb
3docker-ce_28.3.0-1~ubuntu.22.04~jammy_amd64.deb

2.安装deb包

(1).安装容器运行时

sudo dpkg -i containerd.io_1.7.27-1_amd64.deb

containerd.io_1.7.27-1_amd64.deb文件是安装容器运行时(Container Runtime),它是docker的底层依赖。所以我们必须首先安装它。

(2). 安装命令行工具

sudo dpkg -i docker-ce-cli_28.3.0-1~ubuntu.22.04~jammy_amd64.deb

docker-ce-cli_28.3.0-1~ubuntu.22.04~jammy_amd64.deb文件是docker命令行工具(CLI),用于操作docker引擎。它依赖containerd.io,所以要第二个安装。

(3). 安装docker引擎

sudo dpkg -i docker-ce_28.3.0-1~ubuntu.22.04~jammy_amd64.deb

docker-ce_28.3.0-1~ubuntu.22.04~jammy_amd64.deb文件是用于安装docker引擎,它依赖于容器运行时(containerd.io)和命令行工具(docker-ce-cli)前两个组件,所以最后安装。

3.安装检测

我们通过dpkg命令按顺序安装完成上面的三个安装包后,docker就已经正式安装完成了。我们可以通过以下命令来检测docker是否安装成功。

  • 查看安装docker版本
docker –v

  • 运行docker守护进程
systemctl status docker

检查docker服务的状态是否正常运行

  • 执行docker命令
docker images

通过执行docker images命令,查看docker中的镜像。

四.docker镜像加速

有时候在国内网络环境拉取镜像文件时,网速会比较慢。为了提升镜像文件的拉取速度,我们可以使用镜像加速,为docker配置国内的镜像源。

(1).新建和编辑daemon.json

vim /etc/docker/daemon.json

在/etc/docker/目录下创建daemon.json文件,在文件registry-mirrors节点中配置国内的一些镜像源即可。如:阿里,网易,中科大等一些机构的镜像源。

{"registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"]}

(2).重启docker服务

systemctl restart docker

创建好daemon.json文件,我们只需要重启docker服务,以上步骤中配置的阿里镜像源就可以生效了。

http://www.lqws.cn/news/575245.html

相关文章:

  • [数论](a % MOD + b % MOD) % MOD = (a + b) % MOD
  • 【系统分析师】高分论文:论软件开发模型及应用
  • 引入的js文件里有过引用vue,在外侧仍需再写一次吗
  • 【C++】C++的虚析构函数
  • leetcode437-路径总和III
  • 【Flask开发】嘿马文学web完整flask项目第2篇:2.用户认证,Json Web Token(JWT)【附代码文档】
  • 桌面小屏幕实战课程:DesktopScreen 17 HTTPS
  • 熟悉 PyCharm
  • Tomcat服务概述
  • 用户行为序列建模(篇六)-【阿里】DSIN
  • Python爬虫-爬取汽车之家全部汽车品牌及车型数据
  • Linux下基于C++11的socket网络编程(基础)个人总结版
  • 应用层网络编程范式
  • 现代 JavaScript (ES6+) 入门到实战(五):告别回调地狱,Promise 完全入门
  • Origin绘制复合子母饼状图—复合柱饼图、复合环饼图及复合饼图
  • 爬虫实战之图片及人物信息爬取
  • 【IQA技术专题】大模型视觉强化学习IQA:Q-Insight
  • 数据同步工具对比:Canal、DataX与Flink CDC
  • 第二届 Parloo杯 应急响应学习——畸形的爱
  • Mybatis的修改(update)操作
  • 【Linux庖丁解牛】— 文件系统!
  • cJSON 使用方法详解
  • 浅谈AI大模型-MCP
  • 机器学习在智能电网中的应用:负荷预测与能源管理
  • Nginx漏洞处理指南
  • Leetcode 3598. Longest Common Prefix Between Adjacent Strings After Removals
  • 第8篇:Gin错误处理——让你的应用更健壮
  • 【Typst】自定义彩色盒子
  • 【NLP 实战】蒙古语情感分析:从 CNN 架构设计到模型训练的全流程解析(内附项目源码及模型成果)
  • BP-Tools21.02下载 加解密利器 金融安全交易算法工具 PCI认证工具 金融和智能卡的数据加解密和数据转换工具