Linux_CentOS_7.9部署Docker以及镜像加速配置等实操验证全过程手册

前言:实操之前大家应该熟悉一个新的名词DevOps 俗称开发即运维、新一代开发工程师(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合…那我们Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案-----系统平滑移植,容器虚拟化技术。
在我们传统如VMware或者Hyper-V搭建各种业务开发环境相当麻烦,随着换环境,换机器设备等就要重来一次,费力费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。
传统上认为,软件编码开发/测试结束后,所产出的成果即是程序或是能够编译执行的二进制字节码等(java为例)。而为了让这些程序可以顺利执行,开发团队也得准备完整的部署文件,让维运团队得以部署应用程式,开发需要清楚的告诉运维部署团队,用的全部配置文件+所有软件环境。不过,即便如此,仍然常常发生部署失败的状况。Docker的出现使得Docker得以打破过去「程序即应用」的观念。透过镜像(images)将作业系统核心除外,运作应用程式所需要的系统环境,由下而上打包,达到应用程式跨平台间的无缝接轨运作。
一句话:解决了运行环境和配置问题的软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。好吧,不啰嗦了,这里记录下简单docker的部署的记录,关于容器编排集群等大家可根据自身环境及学习去了解。
环境:

1、CentOS-7.9-x86_64-DVD-2009.iso 配置:8U/8G/100G
2、软件包 3:docker-ce-24.0.4-1.el7.x86_64 软件包 1:docker-ce-cli-24.0.4-1.el7.x86_64
————————————————

一、CentOS系统基础环境配置
1、修改主机名(重启系统后生效)
vi hostname
2、将IP设置为静态模式后重启网络,则文件配置成功;
vi /etc/sysconfig/network-scripts/ifcfg-ens33

#将 BOOTPROTO="dhcp"改为 “static”,并添加IP、网关、子网掩码、DNS的信息

3、禁用防火墙和关闭selinux
systemctl disable firewalld
systemctl stop firewalld

在这里插入图片描述

##永久关闭
vi /etc/selinux/config
##将SELINUX=enforcing 改为 SELINUX=disabled 然后保存并退出
##临时关闭系统重启后还是会自动开启
setenforce 0 

在这里插入图片描述
这里部署docker的基础环境已配置完成。

二、开始部署docker

Docker官网参考:https://docs.docker.com/engine/install/centos/

1、确定你是CentOS7及以上版本
cat /etc/redhat-release

在这里插入图片描述

2、卸载系统自带的docker版本
yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

在这里插入图片描述

3、接下来安装几个必要组件(如gcc),但我这边就直接update了,毕竟我们虚拟机是要做大事的,避免每次都单独安装。这里列出相关系统编辑、解压缩、FTP、更新等必要的工具程序;
yum -y update
yum -y install vim
yum -y install unzip
yum -y install lrzsz
4、安装docker官网要求的依赖包
yum install -y yum-utils
5、最重要的事情来了,设置Stable镜像仓库,配置yum源,也就是后续docker的仓库,我们都要从这个源进行push或pull
##推荐
国内阿里云:yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
##大坑
官网国外:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
##查看仓库中所有的docker版本
yum list docker-ce --showduplicates | sort -r

在这里插入图片描述

6、更新yum软件包建立索引
yum makecache fast

在这里插入图片描述

7、安装docker的最新版本
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.1 不指定版本号即默认安装
yum install -y docker-ce
7.2 如果要指定版本号安装
##此时指定的就是docker-ce-18.09的版本
yum install docker-ce-18.09* -y
##例如docker-ce-3:24.0.0-1.el8 替换<VERSION_STRING> 使用所需版本,然后运行以下命令安装:
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin
8、启动docker并设置docker开机自启服务
systemctl start docker
systemctl enable docker
9、查看docker程序运行进程
ps -ef | grep docker

在这里插入图片描述

10、测试验证docker是否安装成功
docker version

在这里插入图片描述

11、永远的HelloWorld
docker run hello-world

在这里插入图片描述
此时,就已经完成了docker运行安装验证,但我觉得还有一步更重要就是我们的配置镜像加速,这是我们日常运维人是必须要配置的,这取决于我们日常push和pull的效率等,下面我就简单添加下,具体操作还需要运维的同学们到阿里云配置各自的加速器脚本。

三、镜像加速获取及配置
1、URL:目前我这边测试环境使用阿里云容器镜像服务:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
2、注册账户:当然还有腾讯网易等都可以使用不指定,注册一个属于自己的阿里云账户
3、登入获取加速器地址及脚本:登陆阿里云开发者平台–点击控制台—选择容器镜像服务—获取加速器地址—粘贴脚本直接执行
4、重启服务器

5、docker镜像加速配置
[root@docker239 docker]# mkdir -p /etc/docker
[root@docker239 docker]# tee /etc/docker/daemon.json <<-'EOF'
> {
>   "registry-mirrors": ["https://******.mirror.aliyuncs.com"]
> }
> EOF
{"registry-mirrors": ["https://******.mirror.aliyuncs.com"]
}
[root@docker239 docker]# cat /etc/docker/daemon.json
{"registry-mirrors": ["https://******.mirror.aliyuncs.com"]
}

在这里插入图片描述

[root@docker239 docker]# systemctl daemon-reload
[root@docker239 docker]# systemctl restart docker
[root@docker239 docker]# docker run hello-world

在这里插入图片描述

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

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

相关文章

合并 K 个升序链表——力扣23

题目描述 法一 顺序合并 class Solution { public:ListNode* mergeTwoLists(ListNode* l1, ListNode* l2){ListNode* dummy new ListNode(-1); //创建一个新的头节点 ListNode *curdummy, *aPtr l1, *bPtr l2;while(aPtr && bPtr){if(aPtr->val < bPtr->…

版本适配好帮手 Android SDK Upgrade Assistant / Android Studio Giraffe新功能

首先是新版本一顿下载↓&#xff1a; Download Android Studio & App Tools - Android Developers 在Tools中找到Android SDK Upgrade Assistant 可以在此直接查看SDK升级相关信息&#xff0c;不用跑到WEB端去查看了。 例如看一下之前经常要对老项目维护的android 12蓝牙…

gitee中fork了其他仓库,如何在本地进行同步

GitHub 操作&#xff1a;同步 Fork 来的仓库&#xff08;上游仓库&#xff09;_sigmarising的博客-CSDN博客 1. 设置upstream 2. git pull --rebase 3. 然后再执行pull、push操作

神经数据库:用于使用 ChatGPT 构建专用 AI 代理的下一代上下文检索系统 — (第 2/3 部分)

书接上回理解构建LLM驱动的聊天机器人时的向量数据库检索的局限性 - &#xff08;第1/3部分&#xff09;_阿尔法旺旺的博客-CSDN博客 其中我们强调了&#xff08;1&#xff09;嵌入生成&#xff0c;然后&#xff08;2&#xff09;使用近似近邻&#xff08;ANN&#xff09;搜索…

Intellij IDEA有什么奇技淫巧?

IDEA全称 IntelliJIDEA&#xff0c;是java语言开发的集成环境&#xff0c;IntelliJ在业界被公认为最好的java开发工具之一&#xff0c;尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、创新的GUI设计等方面的功能可以说是超常的。 idea下载…

index页面通过<script>引入根目录下的js文件后,vite打包项目后,项目中无js文件解决方法

解决方法&#xff1a; 根据打包报错提示&#xff0c;如图&#xff1a;即在<script>标签中加入&#xff1a;type&#xff0c;如图&#xff1a; 再打包 js文件就会被打包进去&#xff01;

水文监测软件 HYPACK 2023.2 Crack

HYPACK是由美国coastal海洋图像公司出品的一款世界知名的水文综合测量软件。它能够为勘测员提供了设计勘测、收集数据、处理数据、减少数据和生成最终产品所需的所有工具。从大地测量转换、测量设计、数据采集、数据后处理直到最终测量成图都实现了快速可靠&#xff0c;强大的绘…

六边形架构和分层架构的区别?

六边形架构和分层架构是什么&#xff1f; 六边形架构&#xff08;Hexagonal Architecture&#xff09;和分层架构&#xff08;Layered Architecture&#xff09;是两种常见的软件架构模式。六边形架构强调将核心业务逻辑与外部依赖解耦&#xff0c;通过接口与外部世界进行通信。…

一文让你彻底搞懂Mybatis之缓存机制

编译软件&#xff1a;IntelliJ IDEA 2019.2.4 x64 操作系统&#xff1a;win10 x64 位 家庭版 Maven版本&#xff1a;apache-maven-3.6.3 Mybatis版本&#xff1a;3.5.6 文章目录 一. 缓存是什么&#xff1f;二. 为什么要使用缓存&#xff1f;三. Mybatis中的缓存分哪几种&#…

MySql基本操作

在了解具体的MySql操作之前&#xff0c;我们需要了解一些基本的sql语句注意事项&#xff0c;如下所示&#xff1a; 每一条sql语句都需要以英文 ; 作为结尾&#xff1b;sql语句当中的关键字不区分大小写&#xff0c;不区分双引号和单引号&#xff1b;sql中库名称、表名称和字段…

Windows 不同方式打开的cmd/dos窗口属性配置不同

文章目录 1. 默认值&#xff08;控制台窗口&#xff09;属性2. "C:\Windows\System32\cmd.exe" 属性3. "命令提示符"属性4. 自定义某标题cmd窗口属性5. cmd快捷方式的属性总结 最近在写某个批处理脚本时&#xff0c;意外发现 Windows系统中&#xff0c;在不…

HBuilder 编辑器终端窗口无法输入,未响应的解决方案

HBuilder 编辑器终端窗口无法输入&#xff0c;未响应的解决方案 一、找到 HBuilder 安装目录 找到 main.js HBuilderX - plugins - builtincef3terminal - script - main.js 二、编辑 main.js 将 main.js 文件中的 powershell.exe 和 cmd.exe 路径都改为绝对路径 C:/Windows…

传染病模型

title: 传染病模型 date: 2023-7-24 10:55:00 updated: 2023-7-24 10:55:00 tags: 算法数学建模传染病模型matlab categories: 数学建模 传染病模型中的符号表示 SI模型&#xff08;艾滋传染模型&#xff09; %% 直接求微分方程的解析解 dsolve(Dx1 -0.1 * x1 * x2 / 1000, D…

SSIS对SQL Server向Mysql数据转发表数据 (三)

1、在控制流界面&#xff0c;在左侧的组件里&#xff0c;添加一个“序列容器组件”和一个“数据流任务组件” 2、双击数据流任务&#xff0c;进入到数据流界面&#xff0c;然后再在左面添加一个OLE DB 源组件、目标源组件 3、右键源组件&#xff0c;编辑&#xff0c;选择好相关…

2023年 React 最佳学习路线

CSS CSS JavaScript JavaScript TypeScript 目前没有找到比其他文档好很多的文档地址 可以先看官网 React 新版 React 官方文档无敌 React React-router-dom V5 V6 Webpack webpack Antd antd

神码ai火车头伪原创设置【php源码】

大家好&#xff0c;给大家分享一下python考什么内容&#xff0c;很多人还不知道这一点。下面详细解释一下。现在让我们来看看&#xff01; 火车头采集ai伪原创插件截图&#xff1a; 1、Python 计算机二级都考什么 Python要到什么程度 考试内容 一、Python语言的基本语法元素…

Jenkins 拉取 GitHub 私有仓库失败问题

添加仓库的时候提示 stderr: fatal: Cannot prompt because user interactivity has been disabled. 把在 GitHub账户设置中生成的个人访问令牌填到地址里

技术分享 | App测试时常用的adb命令你都掌握了哪些呢?

adb 全称为 Android Debug Bridge&#xff08;Android 调试桥&#xff09;&#xff0c;是 Android SDK 中提供的用于管理 Android 模拟器或真机的工具。 adb 是一种功能强大的命令行工具&#xff0c;可让 PC 端与 Android 设备进行通信。adb 命令可执行各种设备操作&#xff0…

cnvd水证书

日常水个证书 本人比较菜&#xff0c;挖cnvd总是挖不倒漏洞&#xff0c;只能从弱口令入手了&#xff0c;一般使用fofa脚本批量跑。 过程&#xff1a; 日常在佛法中我们总是会遇见设备弱口或系统弱口令 一般是看登录成功的特征和口令&#xff0c;写一个对应的弱口令检测脚本…

Linux虚拟机(lvm)报Unmount and run xfs_repair

问题 linux系统没有正常关机&#xff0c;今天启动虚拟机无法进入系统&#xff0c;提示metadata corruption deleted at xxxx&#xff1b; Unmount and run xfs_repair 分析 主机异常掉电后里面的虚拟机无法启动&#xff0c;主要是损坏的分区 解决 看出来应该是dm-0分区损坏…