无网环境Docker Rpm离线安装
总体思路:找一台可以联网的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离线安装的更多相关文章
- 无网环境安装docker之--rpm
总体思路:找一台可以联网的linux,下载docker的RPM依赖包而不进行安装(yum localinstall),将所有依赖的rpm环境打包好,再在无网环境中解压逐一安装(rpm: --forc ...
- centos7无网环境安装docker
1.下载docker的安装文件 https://download.docker.com/linux/static/stable/x86_64/ 由于公司OpenStack用的docker版本是18.0 ...
- CentOS使用rpm离线安装mariadb
本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:CentOS使用rpm离线安装mariadb: 环境: CentOS Linux release 7.6.1810 (Core) mari ...
- centos6.5环境通过rpm包安装mysql5.5.51数据库
centos6.5环境通过rpm包安装mysql5.5.51数据库 注意:此方法适用于单独安装数据库的需求,如果在该机器上还需要安装php环境,建议mysql通过编译或yum方式安装 1.查找已经安装 ...
- 断网环境下利用pip安装Python离线安装包
这几天搞Windows离线断网环境下安装Python包,配置环境,各种坑!做个记录,供以后查询吧. # 生产环境 windows 7 # python 2.7.9 # pip 1.5.2 友情提示:当 ...
- Docker的离线安装
由于公司需要离线部署Docker,这里将其步骤记录下来. 目标环境Centos7.2. 由于目标环境为公司内网,首先尝试在https://download.docker.com/linux/cento ...
- centos 6.4 mysql rpm 离线安装【备忘】
离线状态下使用rpm的安装包进行mysql的安装,仅作备忘 准备工作: 官网下载mysql离线rpm安装包(这里就不演示了,拿现成的做演示) =================更新线 2018-01- ...
- Cloudera Hadoop 环境搭建(离线安装)
关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloud ...
- docker RPM包安装
1. 下载 docker RPM包 docker 使用的系统是 Centos 7.6 基础设施服务器 # wget https://download.docker.com/linux/centos/ ...
- Android开发环境搭建:离线安装ADT插件和安装SDK
一.准备 在线安装SDK较慢,在此我选择了离线安装,所需要的工具下载:http://yun.baidu.com/share/link?shareid=2286446004&uk=2000812 ...
随机推荐
- 4-11.1 C++ 整型的隐式类型转换
整型在运算时小类型会自动转换为大类型[保证精度] 右值给左值赋值时,会被转换为左值类型 int i; long long j; int res = i+j; //i转换为long long,i+j的类 ...
- Failed to load resoure:the serve responded with a status of 405 (Method Not Allowed)
在项目中 web.config 引入 iis 删除WEBDEV 配置结束后 重启服务器
- Codeforces Round 975 Div.2 C题 解析
C题 题目链接:Problem - C - Codeforces 题目描述 思路 对于这道题,首先我们能想到最小的组数肯定是数量最多的那个卡片的数量(mx),因为这个值的每一个卡片不能在同一个组里面. ...
- CommonsCollections2(基于ysoserial)
环境准备 JDK1.8(8u421)这里ysoserial,我以本地的JDK8版本为准.commons-collections4(4.0 以ysoserial给的版本为准).javassist(3.1 ...
- 一文搞懂flex(弹性盒布局)
1.什么是弹性布局 Flex是Flexible Box的缩写,翻译成中文就是"弹性盒子",用来为盒装模型提供最大的灵活性.任何一个容器都可以指定为Flex布局. 她是一种现代的CS ...
- Redis【1】- 如何阅读 Redis源码
1 Redis 的简介 Redis 实际上是简称,全称为 Remote Dictionary Server (远程字典服务器),由 Salvatore Sanfilippo 写的高性能 key-val ...
- JAVA开发规范v1.0
01-中铜国贸JAVA开发规范v1.0 一.编程规约 (一)命名风格 [强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例:_name / _name / $Obje ...
- kubeadm安装 k8s集群证书过期更新
kubeadm安装 k8s集群证书过期更新 kubeadm版本 v1.18.8 #查看证书 #mast节点,查看所有证书 kubeadm alpha certs check-expiration #若 ...
- .NET 阻止系统睡眠/息屏
本文介绍Windows系统设备下如何阻止系统睡眠/息屏,以及想看当前阻止睡眠/息屏的应用信息 powercfg /requests查看活动列表 在播放音乐时,我们会发现设置了系统电源管理-自动睡眠,计 ...
- Unity 3D简单使用C#脚本,脚本的生命周期
Unity 3D简单使用 新建项目->层级里右键->创建空对象改名Test 项目里右键创建C#脚本Test 双击脚本Test(所有脚本都会继承MonoBehaviour类),在Start( ...