Docker的简介、镜像及优化

2023-11-16

1.docker的安装

(1)配置yum源

vim /etc/yum.repo.d/docker-ce.repo
编辑内容

vim /etc/yum.repo.d/CentOS-Base.repo
编辑内容

(2)安装docker

yum install  docker-ce -y


systemctl enable --now docker

systemctl status docker

(3)修改内核信息

docker info


vim /etc/sysctl.d/docker.conf
编辑内容

sysctl --system

(4)清除缓存分区

swapon -s
swapoff -a
swapon -s


vim /etc/fstab
编辑内容

2.docker镜像

(1)docker镜像管理

docker search  yakexi007          //查询镜像


docker pull yakexi007/game2048        //拉取镜像

docker load -i                //安装本地镜像
docker images        //列出本地镜像


docker run -d --name demo -p 80:80 yakexi007/game2048      //运行容器
docker ps          //查看运行容器


docker inspect  demo       //查看容器详情


docker info                  //查看docker内核信息


docker rm -f demo                     //删除容器

docker ps

docker rmi -f yakexi007/game2048         //删除镜像

docker images

(2)Dockerfile实例

配置加速器

vim /etc/docker/daemon.json
编辑内容

systemctl restart docker
docker info


docker pull nginx
docker pull centos:7

docker images


mkdir docker

cp nginx-1.22.0.tar.gz ./docker/
cd docker/

vim index.html

编辑内容


vim Dockerfile
编辑内容

ls


docker build -t nginx:v1 .                         //新建镜像

docker run -d --name nginx -p 80:80 nginx

docker images

 由上图可知:nginx镜像搭建完成,大小为500M

3.docker镜像的优化

常用的docker镜像优化方法有以下三种:

(1)清理镜像构建的中间产物

vim Dockerfile

编辑内容

docker build -t nginx:v2 .

docker images nginx

 明显发现nginx镜像的大小已经减小

(2)减少镜像的层数

vim Dockerfile

编辑内容

docker build -t nginx:v3 .

docker images nginx

 

(3)使用多阶段构建镜像

docker load -i base-debian11.tar

docker images

mkdir new

cd new

vim Dockerfile

编辑内容

docker build -t nginx:v4 .

docker images nginx

 发现nginx镜像大小已显著减小

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker的简介、镜像及优化 的相关文章

随机推荐

  • 异常之自定义异常类

    自定义的异常类一般步骤 1 自定义异常类要继承于Exception类或其子类 或其它异常类 2 为自定义异常类声明字段 属性 成员 方法成员或重写父类的字段和方法 3 自定义异常类至少要定义两个构造方法 一个是无参的 另外一个是带 Stri
  • python操作word——python-docx和python-docx-template模块

    前言 项目用到了导出文档 综合考虑使用python docx模块 目录 python docx 安装 docx文档布局词汇 三个部分 文档 段落 文字块 四级结构 表格 使用 导入word 读操作 获取段落 获取段落文本内容 获取文字块文本
  • AD铺铜中铺地选择异形铺铜方式

    在使用AD时 最后的一步铺铜 铺地 如果是矩形的板子 铺铜很简单 直接捕捉拐角点即可 但是一些异形的板子 就不是那么好办了 虽然可以全选铺铜 最后也不影响最后的PCBA实物 但是有强迫症的肯定会看着不舒服 比如我 所以找到一种快速铺异形板子
  • Go(一)变量和常量

    目录 标识符与关键字 标识符 关键字 变量 变量的来历 变量类型 变量声明 标准声明 批量声明 变量的初始化 类型推导 短变量声明 匿名变量 常量 iota 几个常见的iota示例 标识符与关键字 标识符 在编程语言中标识符就是程序员定义的
  • Spark数据处理实战之列空值&新增列处理

    在spark dataset dataframe操作过程中 我们经常会遇到对于一个列值的一些判断情况 是否为NULL 创建一个新列等 本文讲解了常用的增加列的方法 并且对于列空值判断 填充处理以及查询的api做了详细的描述和实例讲解 阅读完
  • 思科交换机密码破解

    年纪大了 总是忘记cisco交换机密码 现将我初始化cisco交换机密码的两大步13个小步骤记录如下 A 1 打开电脑中SecureCRT软件 或者下载windows7 超级终端 v1 01 绿色版 hypertrm exe 把port C
  • 人人都看得懂的正则表达式教程

    编写验证规则最流行和最简单的方法就是正则表达式了 但唯一的一个问题是正则表达式的语法太隐晦了 让人蛋疼无比 很多开发者为了在项目中应用复杂的验证 经常要使用一些小抄来记住正则式的复杂语法和各种常用命令 在这篇文章中 我将试图让大家明白什么是
  • uboot 设置环境变量

    1 使用命令 ipconfig 查看 windows 系统的 IP 2 使用命令 ifconfig 查看虚拟机 ubuntu 系统的 IP 3 串口登录 fs4412 的uboot 4 在uboot中输入命令 print 打印当前环境变量
  • 如何将栈中的元素输出

    首先需要写一个出栈函数 得到栈顶的值 才能将其输出 bool Pop SqStack s ElemType e if s gt top 1 return false e s gt data s gt top s gt top return
  • android启动优化

    主题 我们今天讨论的主题是 使用第三方工具 CPU Profile 来优化app的启动时间 背景 想要进行app的启动优化有一点必须要知道的就是Android的启动流程和启动状态 启动流程 Android的启动流程相关的知识点 各位可以去查
  • MySQL索引1

    索引最大作用就是提高对表中数据的查询速度 就像书的目录那样重要 可以快速查到所需的知识 上面是11万多条数据的表 使用语句查询 如 耗时 0 108s 再比如 用时 0 004s 接下来创建索引 在t book上右键 选择管理索引 选择新建
  • 基于vue 2.X和高德地图的vue-amap组件获取经纬度

    今天我就讲了一下怎么通过vue和高德地图开发的vue amap组件来获取经纬度 这是vue amap的官网文档 https elemefe github io vue amap 这是我的码云项目的地址 http git oschina ne
  • MySQL函数和存储过程

    MySQL流程控制函数 1 IF函数 IF expr1 expr2 expr3 如果expr1是真 返回expr2 否则返回expr3 SELECT name IF age gt 18 成年 未成年 FROM user 2 IFNULL函数
  • 给Qt程序添加管理员权限总结(一定有你没见过的方式)

    当我们写了一个Qt程序 程序会在C盘某些目录下创建文件时 会发现代码没有问题 但是就是创建失败 而当我们对程序右键 以管理员权限运行时 又可以正常创建文件 此时 说明我们的程序默认不具备管理员权限 故而无法对某些目录进行写入 根据我们的编译
  • 温酒读Qt:QObject 序篇

    一 醉言醉语话夏娃 跟Qt框架打了这么久交道 Qt貌似对我的半斤八两知根知底 我对Qt的认知却还不到半斤八两 o o 或许你知道Qt的meta object和属性系统 或许你在写代码时无数次显示或者隐示的继承了QObject 不管人家是否乐
  • 数据库数据恢复-SQL SERVER数据库分区被格式化的数据恢复方案

    SQL SERVER数据库故障类型 1 SQL SERVER数据库文件被删除 2 SQL SERVER数据库所在分区格式化 3 SQL SERVER数据库文件大小变为 0 4 使用备份还原数据库时覆盖原数据库 SQL SERVER数据库故障
  • Sublime Text 中Anaconda 插件的Python语法配置

    在Ubuntu环境下Sublime Text 配置Anaconda 插件自动检查Python3语法 在Ubuntu16 04环境下使用Sublime Text 写Python3程序 已安装了Anaconda 插件包 通过配置Anaconda
  • Fabric java sdk 1.4简明教程

    在超级账本Fabric区块链中 应用通过节点的RPC协议接口访问链码 Java应用可以使用官方提供的Fabric sdk java开发包来实现对链码的访问 开发包封装了Fabric区块链的GRPC链码访问协议 有利于开发人员聚焦于业务逻辑
  • TCP报文的交互过程

    TCP建立连接和断开连接的过程如下图所示 在TCP 协议提供可靠的连接服务时 采用三次握手建立一个连接 采用四次握手来关闭一个连接 建立TCP连接的三次握手 第一次握手 建立连接时 客户端发送 SYN 包到服务器 等待服务器确认 第二次握手
  • Docker的简介、镜像及优化

    1 docker的安装 1 配置yum源 vim etc yum repo d docker ce repo 编辑内容 vim etc yum repo d CentOS Base repo 编辑内容 2 安装docker yum inst