CentOS下 Docker、Docker Compose 的安装教程

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

Docker Compose是用于定义和运行多容器docker应用程序的工具,compose 通过一个配置文件来管理多个 docker容器。可以使用 docker-compose.yml脚本来 启动、停止、重启应用,进行docker容器的编排和管理。但是 docker compose并没有实现容器的负载均衡,还需要借助其他工具实现。

下面以 CentOS 系统为例,介绍如何安装 Docker 以及 Docker Compose

一、安装 Docker

(1)介绍

Docker 要求 CentOS 系统的内核版本高于 3.10 ,我们首先通过 uname -r 命令查看当前的内核版本看是否满足条件:

(2)升级软件

执行如下命令,将 yum 包更新到最新版本。

sudo yum update

(3)依赖工具安装

执行如下命令,安装需要的软件包。

yum install -y yum-utils device-mapper-persistent-data lvm2

(4)设置yum源

执行如下命令,设置 yum 源。

sudo yum-config-manager \
--add-repo https://download.docker.com/linux/centos/docker-ce.repo

(5)查看可用docker版本

执行如下命令,查看当前所有仓库中所有 docker 版本。

yum list docker-ce --showduplicates | sort -r

(6)安装最新版本docker

这里我们根据上面的结果,执行如下命令安装最新稳定版 18.06.3.ce-3.el7

yum install docker-ce-18.06.3.ce-3.el7

(7)设置docker开机启动

分别执行如下两条命令,启动 docker 并将其加入开机启动。

systemctl start docker
systemctl enable docker

(8)安装验证

执行 docker version 验证下是否安装成功了(只要有 clientservice 两部分则表示 docker 安装启动都成功了)。

(9) 修改Docker Hub镜像地址

vi /etc/sysconfig/docker
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'
#修改为:
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --registry-mirror=https://docker.mirrors.ustc.edu.cn'

重启docker

systemctl restart docker

附:升级 Docker 版本

(1)如果我们主机的 docker 版本比较低,想要升级成最新版本的话。首先执行如下命令,将旧版本删除。

yum remove docker docker-common docker-selinux docker-engine

(2)删除后再次按照上方第 5 步起重新按照指定版本即可。主要安装后同样要将其加入开机自启动。

二、安装 Docker Compose

安装方式一

(1)执行如下命令安装 pip3

yum -y install python3-pip
pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple

(2)执行如下命令安装 docker-compose

pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple

(3)安装完毕后执行如下命令查看版本:

docker-compose version

(4)控制台显示如下则表示安装成功:

安装方式二(use)

docker官网地址:Overview | Docker Documentation

1、检查本地docker版本
docker version
2、docker-compose版本选择

根据docker版本选择对应的docker-compose版本。

docker-compose官网地址:Compose file version 3 reference | Docker Documentation

3、安装

官网安装地址:Overview | Docker Documentation

# github: https://github.com/docker/compose/releases/tag/v2.20.2 
# 国内下载地址:https://gitee.com/smilezgy/compose/releases/tag/v2.20.2
curl -SL \
https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-linux-x86_64 \
-o /usr/local/bin/docker-compose
4、添加可执行权限
chmod +x /usr/local/bin/docker-compose
5、测试
[root@bogon bin]# docker-compose --version
Docker Compose version v2.20.2

如果需要删除则执行如下命令

rm -rf /usr/local/bin/docker-compose
6、Docker Compose运行项目

要运行Docker Compose,需要在项目目录中拥有一个docker-compose.yml文件。完成以下步骤:

  1. 打开终端或命令提示符。
  2. 导航到存放docker-compose.yml文件的目录。
  3. 运行以下命令启动在compose文件中定义的容器:
docker-compose up
默认情况下,此命令将启动compose文件中指定的所有服务,并在终端中显示它们的日志。
要使用分离模式(在后台)运行容器,可以添加 -d标志:
# 此命令会启动容器并将控制返回给终端。
docker-compose up -d
请注意,如果是第一次运行 docker-compose up,它将从Docker Hub拉取任何必要的Docker镜像,然后再启动容器。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一些类型推导相关的功能(C++)

目录 auto关键的新用法(C11起) 背景介绍 用法示例 注意事项 typeid运算符 type_info类 typeid的用法 decltype运算符 用法阐述 用法示例 用法建议 function类模板 用法阐述 用法示例 function较函数指针的优势 std::function和decltype的…

DID以及社交网络中的ZKP

1. 引言 本文关键术语为: Decentralized Identity (DID,去中心化身份) or self-sovereign identity (SSI,自治身份) :是一个基于开放标准的框架,使用自主、独立的标识符和可验证证书,实现可信的数据交换。…

Vue2 第六节 key的作用与原理

(1)虚拟DOM (2)v-for中的key的作用 一.虚拟DOM 1.虚拟DOM就是内存中的数据 2.原生的JS没有虚拟DOM: 如果新的数据和原来的数据有重复数据,不会在原来的基础上新加数据,而是重新生成一份 3. Vue会有虚拟…

驶向专业:嵌入式开发在自动驾驶中的学习之道

导语: 自动驾驶技术在汽车行业中的快速发展为嵌入式开发领域带来了巨大的机遇。作为自动驾驶的核心组成部分,嵌入式开发在驱动汽车的智能化和自主性方面发挥着至关重要的作用。本文将探讨嵌入式开发的学习方向、途径以及未来在自动驾驶领域中的展望。 一、学习方向:…

3ds MAX绘制茶壶

综合一下之前的内容画个茶壶 长方形,然后转化为可编辑多边形,添加节点并设置圆角,如下图 车削生成一个圆环,其实这一步也可以用一个圆柱体和两个圆角圆柱体解决 效果如下: 茶壶的底座绘制好了 接下来是茶壶的上半边 …

python测试开发面试常考题:装饰器

目录 简介 应用 第一类对象 装饰器 描述器descriptor 资料获取方法 简介 Python 装饰器是一个可调用的(函数、方法或类),它获得一个函数对象 func_in 作为输入,并返回另一函数对象 func_out。它用于扩展函数、方法或类的行为。 装饰器模式通常用…

Hudi Flink SQL源码调试学习(1)

前言 本着学习hudi-flink源码的目的,利用之前总结的文章Hudi Flink SQL代码示例及本地调试中的代码进行调试,记录调试学习过程中主要的步骤及对应源码片段。 版本 Flink 1.15.4Hudi 0.13.0 目标 在文章Hudi Flink SQL代码示例及本地调试中提到:我们…

【LLM系列之指令微调】长话短说大模型指令微调的“Prompt”

1 指令微调数据集形式“花样”太多 大家有没有分析过 prompt对模型训练或者推理的影响?之前推理的时候,发现不加训练的时候prompt,直接输入模型性能会变差的,这个倒是可以理解。假如不加prompt直接训练,是不是测试的时…

基于高通QCC5171的对讲机音频数据传输系统设计

一 研发资料准备 二 设计方法 蓝牙连接与配对:使用QCC5171的蓝牙功能,实现设备之间的蓝牙连接和配对。确保设备能够相互识别并建立起稳定的蓝牙连接。 音频采集与处理:将麦克风采集到的音频数据通过QCC5171的ADC(模数转换器&…

linux系统编程重点复习--线程同步

目录 复习目标: 1 互斥锁 1.1互斥锁的使用步骤 1.2 练习 1.3 死锁 2 读写锁 3 条件变量 4 信号量 复习目标: 熟练掌握互斥量的使用说出什么叫死锁以及解决方案熟练掌握读写锁的使用熟练掌握条件变量的使用理解条件变量实现的生产消费者模型理解…

python简单的病毒编程代码,如何用python写一个病毒

大家好,本文将围绕python简单的病毒编程代码展开说明,如何用python做恶搞病毒是一个很多人都想弄明白的事情,想搞清楚如何用python写一个病毒需要先了解以下几个事情。 1、Python能不能写病毒 国家计算机病毒应急处理中心通过对互联网的监测…

算法leetcode|64. 最小路径和(rust重拳出击)

文章目录 64. 最小路径和:样例 1:样例 2:提示: 分析:题解:rust:go:c:python:java: 64. 最小路径和: 给定一个包含非负整数的 m x n 网…

windows 安装 mongodb 数据库

软件下载 访问官方的下载地址: https://www.mongodb.com/try/download/community ,然后选择对应的版本进行下载 下载好了之后双击进行安装 软件安装 1、点击 next 点击下一步 2、勾选接受协议,点击 next 3、第三页有两个选项&#x…

redisson分布式锁学习

什么是分布式锁? 当有多个线程并发访问同一共享数据时,如果多个线程同时都去修改这个共享数据,且修改操作不是原子操作,就很有可能出现线程安全问题,而产生线程安全问题的根本原因是缺乏对共享数据访问的同步和互斥。 为了解决这个问题,通常我们的做法…

P2P网络NAT穿透原理(打洞方案)

1.关于NAT NAT技术(Network Address Translation,网络地址转换)是一种把内部网络(简称为内网)私有IP地址转换为外部网络(简称为外网)公共IP地址的技术,它使得一定范围内的多台主机只…

SpringBoot超级详解

1.父工程的父工程 在父工程的父工程中的核心依赖,专门用来版本管理的 版本管理。 2.父工程 资源过滤问题,都帮解决了,什么配置文件,都已经配置好了,资源过滤问题是帮助,过滤解决让静态资源文件能够过滤到…

别再分库分表了,来试试它吧

什么是NewSQL传统SQL的问题 升级服务器硬件数据分片NoSQL 的问题 优点缺点NewSQL 特性NewSQL 的主要特性三种SQL的对比TiDB怎么来的TiDB社区版和企业版TIDB核心特性 水平弹性扩展分布式事务支持金融级高可用实时 HTAP云原生的分布式数据库高度兼容 MySQLOLTP&OLAP&#xff…

openssl/bn.h: No such file or directory

报错截图 解决方法 ubuntu apt install libssl-dev -y centos yum install openssl-devel -y

第六章 支持向量机

文章目录 支持向量机间隔和支持向量对偶问题问题推导SMO 核函数实验 支持向量机 ⽀持向量机(Support Vector Machines,SVM) 优点:泛化错误率低,计算开销不⼤,结果易解释。缺点:对参数调节和核…