CentOS7 离线部署docker和docker-compose环境

一、Docker 离线安装

1. 下载docker tar.gz包

下载地址: Index of linux/static/stable/x86_64/

本文选择版本:23.0.6

2.创建docker.service文件

vi docker.service文件内容如下:

[Unit]
Description=Docker Application Container Engine
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
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s[Install]
WantedBy=multi-user.target

3. 一键安装脚本

注意: 安装脚本和docker.service文件放在安装包的同级目录下

vi install_docker.sh

#!/bin/sh
echo '解压tar包...'
tar_file=$1
if [ -f $tar_file ];thentar -zxvf $tar_fileecho '将docker目录移到/usr/bin目录下...'cp docker/* /usr/bin/echo '将docker.service 移到/etc/systemd/system/ 目录...'cp docker.service /etc/systemd/system/echo '添加文件权限...'chmod +x /etc/systemd/system/docker.serviceecho '重新加载配置文件...'systemctl daemon-reloadecho '启动docker...'systemctl start dockerecho '设置开机自启...'systemctl enable docker.serviceecho 'docker安装成功...'docker -v
elseecho "$tar_file,文件不存在"
fi

4. 执行脚本

chmod +x install_docker.sh

./install_docker.sh tar包路径

解压tar包...

docker/

docker/docker-proxy

docker/containerd-shim-runc-v2

docker/ctr

docker/docker

docker/docker-init

docker/runc

docker/dockerd

docker/containerd

将docker目录移到/usr/bin目录下...

将docker.service 移到/etc/systemd/system/ 目录...

添加文件权限...

重新加载配置文件...

启动docker...

设置开机自启...

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /etc/systemd/system/docker.service.

docker安装成功...

Docker version 23.0.6, build ef23cbc

[root@localhost docker-run-envirment]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

安装完成!

二、docker-compose安装

1、安装docker-compose

注意:要安装其他版本的Compose,可以将1.29.2替换为要安装的Compose版本

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2、申请可执行权限

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

3、查看docker-compose版本

$ docker-compose --version

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/55217.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python鸭子类型解释

Python 的 鸭子类型(Duck Typing) 是一种动态类型机制,源于一句幽默的编程哲学:“如果它走起来像鸭子,叫起来像鸭子,那么它就可以被认为是鸭子”(“If it walks like a duck and quacks like a …

【MySQL】数据库的介绍以及数据库基础

目录 🌳介绍 🎄数据库操作 🚩显示当前数据库 🚩创建数据库 ​编辑🚩使用/选中 数据库 🚩删除数据库 🌴常用的数据类型 🚩数值类型 🚩字符串类型 &#x1f6a9…

【自用软件】IDM下载器 Internet Download Manager v6.42 Build 10

下载IDM&pj安装教程 Internet Download Manager,简称 IDM,是国外的一款优秀下载工具。目前凭借着下载计算的速度优势在外媒网站中均受好评,现在已被多数国人熟知。Internet Download Manager 提升你的下载速度最多达5倍,安排下…

【HarmonyOS】深入理解LocalStorage之逻辑处理存取

【HarmonyOS】深入理解LocalStorage 一、前言 鸿蒙应用中关于状态管理的处理机制有很多。从状态装饰器State prop等,LocalStrong,AppStrong到首选项,再到数据库。内存到持久化。轻量级到重量级。全方位覆盖。 学习和记忆技术点&#xff0c…

Java-数据结构-Map和Set-(二)-哈希表 |ू・ω・` )

文本目录: ❄️一、哈希表: ☑ 1、概念: ☑ 2、冲突-概念: ☑ 3、冲突-避免: ☞ 1)、避免冲突-哈希函数的设计: ☞ 2)、避免冲突-负载因子调节(重点): ☑ 4、冲突-解决&…

那年我双手插兜,使用IPv6+DDNS动态域名解析访问NAS

估计有很多科技宅和我一样,会买一个NAS存储或者自己折腾刷一下黑群晖玩玩,由于运营商不给分配固定的公网IP,就导致我在外出的时候无法访问家里的NAS,于是远程访问常常受到IP地址频繁变动的困扰。为了解决这一问题,结合…

Python 统计学

Python 统计学 Python 是一种广泛使用的编程语言,尤其在数据科学和统计学领域。它提供了丰富的库和工具,使得进行统计分析变得更加容易和高效。本文将介绍 Python 在统计学中的应用,包括基本统计概念、常用的统计函数和库,以及如何使用 Python 进行数据分析。 基本统计概…

git本地分支落后于远程分支,因此推送被拒绝怎么办?

error: failed to push some refs to https:// 这个错误提示表明你的本地分支落后于远程分支,因此推送被拒绝。你需要先将远程分支的更改合并到本地分支,然后再推送。 以下是解决方法: 拉取远程分支的更改并合并: git pull orig…

【Kubernetes】常见面试题汇总(三十八)

目录 91. Docker 的网络通信模式。 特别说明: 题目 1-68 属于【Kubernetes】的常规概念题,即 “ 汇总(一)~(二十二)” 。 题目 69-113 属于【Kubernetes】的生产应用题。 91. Docker 的网络通信模式…

element 输入框文字+对应签进行长度 和 的判断

输入文字长度 指定标签的长度 &#xff08;判断长度并提示&#xff09; <div style"position: relative;" classchangyongyu><el-input type"textarea" :autosize"{ minRows: 8, maxRows: 8 }" style"margin-bottom:10px;"…

计算机网络面试题——第一篇

1. 常见的HTTP状态码有哪些 1xx&#xff1a;信息响应 100 continue&#xff1a; 服务器已经接受请求的初步部分&#xff0c;客户端应继续请求。101 switching protocols&#xff1a;服务器统一切换协议&#xff0c;如从HTTP切换到websocket。 2xx&#xff1a;成功 200 OK&a…

pytest - 多线程提速

import timedef test1_test1():time.sleep(1)assert 1 1, "11"def test1_test2():time.sleep(1)assert 1 1, "11" 上面2个函数&#xff0c;执行情况&#xff1a; 正常执行时&#xff0c;花费 2.08s2个进程执行时&#xff0c;花费 1.18s2个线程执行时&a…

k8s篇之数据挂载类型及区别

一、K8S集群数据挂载类型及区别 在 Kubernetes 中,数据挂载类型主要有以下几种,每种类型适用于不同的场景。以下是主要的挂载类型及其应用场景的详细说明: 1. emptyDir 描述:emptyDir 是一个空目录,其生命周期与 Pod 相同。 它在 Pod 创建时被创建,并在 Pod 删除时被清…

NLP:命名实体识别及案例(Bert微调)

1. 命名实体识别 1.1 序列标注 序列标注(Sequence Labeling)是NLP中最基础的任务之一&#xff0c;其应用十分广泛。它指的是对给定的序列(如文本中的单词或字符)中的每个元素进行标注&#xff0c;以识别出该元素在序列中的特定角色或属性。 1.2 命名实体识别 命名实体识别(Na…

【React】useEffect

1. 基本介绍 概念 语法 副作用函数依赖项数组&#xff08;空数组时&#xff0c;只会在组件渲染完毕后执行一次副作用函数&#xff09; 2. 使用 import { useEffect, useState } from reactfunction App() {const [value, setValue] useState(0)useEffect(() > {console…

如何使用ssm实现小区物业管理系统

TOC ssm733小区物业管理系统jsp 第一章 绪论 1.1 研究背景 在现在社会&#xff0c;对于信息处理方面&#xff0c;是有很高的要求的&#xff0c;因为信息的产生是无时无刻的&#xff0c;并且信息产生的数量是呈几何形式的增加&#xff0c;而增加的信息如何存储以及短时间分析…

Quill Editor 富文本编辑器的高度问题

问题现象 1. 编辑框只有一行高&#xff1b; 2. 编辑框高度足够&#xff0c;但显示不全&#xff0c;左侧有滚动条。向下拉滚动条&#xff0c;编辑框把工具栏向上顶出去&#xff0c;工具栏看不见了。 网上搜出来一大堆各种说法&#xff0c;照猫画虎&#xff0c;有时候对&#…

基于微信小程序的美食外卖管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码 精品专栏&#xff1a;Java精选实战项目…

SPI驱动学习七(SPI_Slave_Mode驱动程序框架)

目录 一、SPI_Slave_Mode驱动程序框架1. Master和Slave模式差别1.1 主设备 (Master)1.2 从设备 (Slave)1.3 示例 2. SPI传输概述2.1 数据组织方式2.2 SPI控制器数据结构 3. SPI Slave Mode数据传输过程4. 如何编写程序4.1 设备树4.2 内核相关4.3 简单的示例代码4.3.1 master和s…

Anaconda虚拟环境默认路径在C盘怎么更改

笔者已经新建好了虚拟环境并且安装了对应库&#xff0c;输入conda env list查询发现虚拟环境竟然安装到了C盘(&#xff61;•́︿•̀&#xff61;)&#xff0c;为避免下一次创建虚拟环境出错&#xff0c;笔者现在修改默认路径置D盘&#xff08;软件安装盘&#xff09; 参考两…