总体思路:找一台可以联网的linux,下载docker的RPM依赖包而不进行安装(yum localinstall),将所有依赖的rpm环境打包好,再在无网环境中解压逐一安装(rpm: --force --nodeps)。

提前准备docker的RPM依赖包

我这里操作系统版本是 CentOS Linux release 7.9.2009 (Core)

默认的yum软件源是http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=updates&infra=stock 国内加载这个比较慢,经常会报异常。建议添加国内的yum源地址。

-bash: yum-config-manager: 未找到命令



问题原因:系统默认没有安装这个命令 yum-config-manager ,这个命令在 yum-utils 包里。

解决办法:安装 yum-utils 包

sudo yum -y install yum-utils

输出“完毕!”标识安装完成。

添加yum软件源信息(国内有很多,我这里添加阿里):

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

添加yum软件源完成:

更新 yum 缓存:

sudo yum makecache fast

如图:

下载所有安装依赖到指定路径下:

mkdir -vp /home/docker-rpm/

sudo yum install docker-ce --downloadonly --downloaddir=/home/docker-rpm/

如图:



安装 1 软件包 (+16 依赖软件包)

总下载量:98 M

安装大小:361 M

解释:标准的--downloadonly(只下载,不安装) 的选项来达到这个目的。

将所有依赖的rpm环境打包:

sudo tar -czvf docker-ce-20-CentOS7.9-rpm.tar.gz docker-rpm/

无网环境安装:

创建安装脚本(install-docker-offline.sh):

#! /bin/bash
# author: xiongzaiqiren
# date: 2022-11-31
# usage: sh install-docker-offline.sh
# 安装docker请执行我。 mypath=`pwd` cd ${mypath}
yum -y localinstall *.rpm



会自动关联软件依赖关系“正在解决依赖关系 …… --> 解决依赖关系完成”:

启动或重启docker

手工启动或重启docker命令:

sudo systemctl status docker  #查看启动状态(安装完默认未启动,需要手动执行启动命令)

# 启动docker
sudo systemctl start docker
# 重新启动docker
sudo systemctl restart docker
# 重新加载unit配置文件
sudo systemctl daemon-reload

如图:



新安装好的docker很干净,没有镜像或容器:

设置开机启动docker

关于Linux设置开机自启动常用命令:

1,查看已启动的服务

systemctl list-units -type=service

2,查看是否设置开机启动

systemctl list-unit-files | grep enable

3,设置开机启动

systemctl enable docker.service

4,关闭开机启动(需要时操作)

systemctl disable docker.service

设置开机启动 docker服务 如图:

5,查看docker启动状态

systemctl status docker.service

如图:

docker容器设置自动启动

1,启动时加restart-always

docker run -tid -name 容器id -p 端口号 -restart-always -v 挂载

Flag Description

no 不自动重启容器:(默认value)

on-failure 容器发生error而退出(容器退出状态不为0)重启容器

unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器

always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器

2,如果已经过运行的项目

如果已经启动的项目.则使用update更新:

docker update --restart = always 容器id


无网环境Docker Rpm离线安装的更多相关文章

  1. 无网环境安装docker之--rpm

    总体思路:找一台可以联网的linux,下载docker的RPM依赖包而不进行安装(yum localinstall),将所有依赖的rpm环境打包好,再在无网环境中解压逐一安装(rpm:  --forc ...

  2. centos7无网环境安装docker

    1.下载docker的安装文件 https://download.docker.com/linux/static/stable/x86_64/ 由于公司OpenStack用的docker版本是18.0 ...

  3. CentOS使用rpm离线安装mariadb

    本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:CentOS使用rpm离线安装mariadb: 环境: CentOS Linux release 7.6.1810 (Core) mari ...

  4. centos6.5环境通过rpm包安装mysql5.5.51数据库

    centos6.5环境通过rpm包安装mysql5.5.51数据库 注意:此方法适用于单独安装数据库的需求,如果在该机器上还需要安装php环境,建议mysql通过编译或yum方式安装 1.查找已经安装 ...

  5. 断网环境下利用pip安装Python离线安装包

    这几天搞Windows离线断网环境下安装Python包,配置环境,各种坑!做个记录,供以后查询吧. # 生产环境 windows 7 # python 2.7.9 # pip 1.5.2 友情提示:当 ...

  6. Docker的离线安装

    由于公司需要离线部署Docker,这里将其步骤记录下来. 目标环境Centos7.2. 由于目标环境为公司内网,首先尝试在https://download.docker.com/linux/cento ...

  7. centos 6.4 mysql rpm 离线安装【备忘】

    离线状态下使用rpm的安装包进行mysql的安装,仅作备忘 准备工作: 官网下载mysql离线rpm安装包(这里就不演示了,拿现成的做演示) =================更新线 2018-01- ...

  8. Cloudera Hadoop 环境搭建(离线安装)

    关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...

  9. docker RPM包安装

    1. 下载 docker RPM包 docker 使用的系统是  Centos 7.6 基础设施服务器 # wget https://download.docker.com/linux/centos/ ...

  10. Android开发环境搭建:离线安装ADT插件和安装SDK

    一.准备 在线安装SDK较慢,在此我选择了离线安装,所需要的工具下载:http://yun.baidu.com/share/link?shareid=2286446004&uk=2000812 ...

随机推荐

  1. Go语言:未指定类型的常量(untyped int constant)和大整数的关系

    运行下面的代码: 点击查看代码 package main import "fmt" const ( Big = 1 << 100 ) func needFloat(x ...

  2. 7、listener监听

    启动远程图形界面登录的工具 [root@db11g ~]# vncserver 监听 监听的启动 [oracle@db11g ~]$ lsnrctl start 判断监听是否启动 [oracle@db ...

  3. WiFi流量劫持—— 浏览任意页面即可中毒!

    大家都知道公共场所的Wifi安全性很差,但并不清楚究竟有多差.大多以为只要不上QQ.不登陆网站账号就没事了,看看新闻小说什么的应该毫无关系. 的确如此,看看新闻网页没有涉及任何敏感的账号信息.即便是数 ...

  4. JS逆向

    插件工具v_jstools:https://github.com/cilame/v_jstools 对指定的一些操作进行监听 1) 一定要开启 是否挂钩总开关 2)是否启用一下几个加解密函数挂钩输出功 ...

  5. php-fpm相关操作

    php-fpm常用操作 一. php5.3.3之后使用新号方式控制php-fpm进程 INT, TERM 立即终止 QUIT 平滑终止 USR1 重新打开日志文件 USR2 平滑重启所有worker进 ...

  6. Python 潮流周刊#79:Python 的元数据困境(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...

  7. 移动端NES网页模拟器(2)

    前言 前面的章节已经封装了一个NES的虚拟按钮,这个章节来封装他的方向键. 在一些NES网页网页模拟器中,方向键要么使用按钮模式,要么使用摇杆模式,各有不足.例如按钮模式无法滑动,用户点了半天才知道点 ...

  8. 使用Docker快速部署一个Net项目

    前言 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. 优点 Web 应用的自动化打包和发布. 自动化测试和 ...

  9. Element Plus组件v-loading在el-dialog组件上使用无效

    前情 公司有经常需要做一些后台管理页面,我们选择了Element Plus,它是基于 Vue 3,面向设计师和开发者的组件库,是Vue框架生态中比较火的UI组件库,组件库丰富易用,组件链接:一个 Vu ...

  10. COS 音视频实践|播放多场景下的 COS 视频文件

    导语 上回 (COS音视频实践|多种姿势让你的视频"跑"起来)说道,基于您的实际场景,可以选择不同的方式,在 Web 浏览器端播放您的 COS 视频文件.本文将基于腾讯云超级播放器 ...