04:容器技术概述|镜像与容器|docker配置管理

news2024/9/21 20:53:46

容器技术概述|镜像与容器|docker配置管理

  • 什么是容器
    • 优点
    • 缺点
  • docker与容器
    • 跳板机yum源添加docker软件
    • 在node节点验证软件包
    • 开启路由转发
  • 镜像管理&容器管理
    • 如何获取镜像
    • 镜像备份与恢复
    • 运行容器
    • 查看镜像的启动信息
    • 镜像管理命令
    • 容器管理命令
    • 容器内部署应用

什么是容器

就是将软件打包成标准化单元,用于开发、交付和部署。容器技术已经成为应用程序封装和交付的核心技术。
容器技术的核心有以下几个内核技术组成:

  • 资源管理
  • 安全
  • 命令空间

优点

  • 相比于传统的虚拟化技术,容器更加简洁高效
  • 传统虚拟机需要给每个VM安装操作系统
  • 容器使用的共享公共库和程序

缺点

  • 容器的隔离性没有虚拟化强
  • 共用linux内核,安全性有先天缺陷
    在这里插入图片描述

docker与容器

Docker是完整的一套容器管理系统,提供了一组命令,让用户更加方便直接使用容器技术,而不需要过多关心底层内核技术。
在这里插入图片描述
在这里插入图片描述

跳板机yum源添加docker软件

[root@ecs-proxy ~]# cp -a docker /var/ftp/localrepo/
[root@ecs-proxy ~]# cd /var/ftp/localrepo/
[root@ecs-proxy localrepo]# createrepo -update . 

在node节点验证软件包

[root@docker-0001 ~]# yum makecache
[root@docker-0001 ~]# yum list docker-ce*

以下操作在所有node节点操作

开启路由转发

[root@docker-0001 ~]# vim /etc/sysctl.conf
net.vip4.ip_forward=1
[root@docker-0001 ~]# sysctl -p
[root@docker-0001 ~]# yum install -y docker-ce
[root@docker-0001 ~]# systemctl enable --now docker
[root@docker-0001 ~]# ifconfig # 验证 能看见docker0
[root@docker-0001 ~]# docker version # 验证 没错

镜像管理&容器管理

镜像是启动容器的核心
在docker中容器是基于镜像启动的
镜像采用分层设计
使用cow技术
在这里插入图片描述

如何获取镜像

  • 官方镜像仓库:hub.docker.com
  • 查看本机镜像:docker images
  • 查找镜像(需要能访问互联网):docker search 关键字
  • 下载镜像(需要能访问互联网):docker pull 镜像名称:标签
    在这里插入图片描述

镜像备份与恢复

  • 备份镜像(导出镜像)
docker save 镜像名称:镜像标签 -o 文件名(tar格式)
  • 恢复镜像(导入镜像)
docker load -i 备份文件名称

运行容器

# docker run 命令
docker run -参数 镜像名称:镜像标签 启动命令
# 查看run的参数
docker help run 
man docker-run
# run = 创建 + 启动 + 进入

run参数
-i 交互式
-t 终端
-d 后台运行
–name 容器名字

服务型的容器 后台运行

查看镜像的启动信息

docker inspect nginx:latest

在这里插入图片描述

docker ps # 查看容器

镜像管理命令

在这里插入图片描述

容器管理命令

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

容器内部署应用

[root@docker-0002 ~]# docker rm -f $(docker ps -aq)
[root@docker-0002 ~]# docker run -it --rm mycentos:latest
#-----------------------------------------------------------
[root@a7f9d0c3e3e2 /]# yum install -y httpd php
[root@a7f9d0c3e3e2 /]# echo "Hello World ." >/var/www/html/index.html
[root@a7f9d0c3e3e2 /]# cat /etc/sysconfig/httpd
[root@a7f9d0c3e3e2 /]# export LANG=C
[root@a7f9d0c3e3e2 /]# cat /usr/lib/systemd/system/httpd.service
[root@a7f9d0c3e3e2 /]# /usr/sbin/httpd -DFOREGROUND
# 启动服务以后 ctrl-p + ctrl-q 退出
#-----------------------------------------------------------
[root@docker-0002 ~]# curl http://172.17.0.2/
Hello world

容器的启动进程不能被关闭 容器的启动进程必须在前台运行

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

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

相关文章

用C#实现最小二乘法(用OxyPlot绘图)

最小二乘法介绍✨ 最小二乘法(Least Squares Method)是一种常见的数学优化技术,广泛应用于数据拟合、回归分析和参数估计等领域。其目标是通过最小化残差平方和来找到一组参数,使得模型预测值与观测值之间的差异最小化。 最小二…

2023年春秋杯网络安全联赛冬季赛_做题记录

可信计算 基于挑战码的双向认证1 可信计算赛题-双向认证挑战模式.docx 使用命令进行SSH登录上去 ssh player8.147.131.156 -p 18341 # 记得加上-p参数指定端口,不然默认的是22端口看见word文档的提示,先尝试一下 直接获得了flag1 web 魔术方…

public class和class的区别

不用public修饰的类 一个Java源文件中可以定义多个不用public修饰的class,且类名不用和java源文件名一致。public修饰的类可以没有。编译之后,一个class就会对应生成一个class字节码文件 对于用public修饰的类 如果一个类用了public修饰,那…

成功解决Error:AttributeError: module ‘numpy‘ has no attribute ‘long‘.

成功解决Error:AttributeError: module ‘numpy‘ has no attribute ‘long‘. 🌵文章目录🌵 🌳引言🌳🌳报错分析🌳🌳解决方案1:降低NumPy版本🌳&#x1f333…

Github 上传项目(个人令牌token)

1.点击 github头像 : setting -> Developer Settings -> Personal access tokens 2.在要上传的文件夹下运行以下命令: git init git commit -m "first commit" git branch -M main 利用以下命令模…

使用流服务器m7s对接gb28181

优:sip品牌兼容性比较好,大华,海康都稳定可以,srs的5.0 sip品牌兼容性大华没反应,akstream-sip 大华也有问题,wvp也还可以 缺:目前最新的4.7.4版本,,sip协议用udp正常&a…

IP 层转发分组的过程

目录 IP 层转发分组的过程 1.1 基于终点的转发 1.2 最长前缀匹配 转发表中的 2 种特殊的路由 主机路由 (host route) 默认路由 (default route) 路由器分组转发算法 1.3 使用二叉线索查找转发表 IP 层转发分组的过程 1.1 基于终点的转发 分组在互联网中是逐跳转发的。…

Angular组件(二) 分割面板ShrinkSplitter

Angular组件(二) 分割面板ShrinkSplitter 前言 在Angular组件(一) 分割面板ShrinkSplitter文章中我们实现了Splitter组件,后来在业务场景中发现在开关右侧容器和底部容器时,使用起来不方便,ngModel绑定的值始终是左侧容器和顶部容器的大小&…

电路分享 —— 单片机 1个IO口检测多路按键

一、设计要求 设计要求:因为单片机的IO口数量较少,要求使用1路IO口检测4路按键。 二、设计思路 设计思路:单片机的IO口数量较少的情况下,使用1路IO口检测4路按键,可以通过检测电压值来进行区分,即使用IO口…

如何纯前端实现文件下载

业务场景 有一个下载文件的功能,不引入后端资源,纯前端应该如何实现? 解决方案 在vue2或者vue3项目中,可以把文件放在 public 文件夹下,然后使用a标签进行文件下载。 如:我要下载的文件是模版.xlsx 。首…

STM32学习笔记二——STM32时钟源时钟树

目录 STM32芯片内部系统架构详细讲解: 1.芯片内部混乱电信号解决方案: 2.时钟树: 1.内部RC振荡器与外部晶振的选择 2. STM32 时钟源 3.STM32中几个与时钟相关的概念 4.时钟输出的使能及其流程 5.时钟设置的基本流程 时钟源——单片机…

应用下载页源码简洁高大尚下载单页

首先可以设置多个下载源 软件截图可以滚动 暗夜主题交换 图片都可以自定义配置 精美的页面会让你眼前一亮的 源代码学习资料:https://pan.baidu.com/s/1ulE9zde2XMs-6E7eF3D3kg?pwdfhxq 密码:123

1178:单词数

题目描述 统计一篇文章里不同单词的总数。 输入 有多组数据,每组一行,每组就是一篇小文章。每篇小文章都是由大小写字母和空格组成,没有标点符号,遇到#时表示输入结束。每篇文章的单词数小于1000,每个单词最多由30个…

系统分析师-22年-下午题目

系统分析师-22年-下午题目 更多软考知识请访问 https://ruankao.blog.csdn.net/ 试题一必答,二、三、四、五题中任选其中两题作答 试题一 (25分) 说明 某软件公司拟开发一套博客系统,要求能够向用户提供一个便捷发布自已心得,及时有效的…

Cmake编译Opencv3.3.1遇到有些文件无法下载的错误解决:

前言: 对于,opencv有些配置文件错误并未致命,所以,有错误也不影响后续的编译:但是,后引用如果要用,在回过头来还是要解决的。 问题表述: 比如,有些文件下载的错误&am…

穷游网酒店数据采集与可视化分析与实现

摘 要 穷游网酒店数据采集与可视化分析大屏的背景是为了满足用户对酒店数据的需求以及提供数据洞察和决策支持。随着旅游业的快速发展,人们对酒店信息的需求日益增加,而穷游网作为一家专注于旅游信息的网站,拥有丰富的酒店数据资源。 这个大…

JS基础 - 遍历对象方法(6种)

初始值: var obj {a: 1,b: 2,c: 3,d: 4,e: 5,}; 第一种:for in for (let key in obj) {console.log(key ":" obj[key]);} 第二种:Object.keys 获取key Object.keys(obj).forEach((key) > {console.log(key ":" …

【乳腺肿瘤诊断分类及预测】基于Elman神经网络

课题名称:基于Elman神经网络的乳腺肿瘤诊断分类及预测 版本日期:2023-05-15 运行方式: 直接运行Elman0501.m 文件即可 代码获取方式:私信博主或QQ:491052175 模型描述: 威斯康辛大学医学院经过多年的收集和整理&a…

关于TongWeb部署应用报错java.lang.NoSuchFieldError: REFLECTION (by liuhui)

关于TongWeb部署应用报错java.lang.NoSuchFieldError: REFLECTION (by liuhui) 关于TongWeb部署应用报错java.lang.NoSuchFieldError: REFLECTION 问题现象:xml解析对象工厂类错误导致解析失败 解决办法:增加配置参数问题解决 -…

学习鸿蒙基础(2)

arkts是声名式UI DevEcoStudio的右侧预览器可以预览。有个TT的图标可以看布局的大小。和html的布局浏览很像。 上图布局对应的代码: Entry //入口 Component struct Index {State message: string Hello Harmonyos //State 数据改变了也刷新的标签build() {Row()…