了解基础的docker容器化

2023-10-26

一:什么是docker容器?

docker容器简单说来就是码头工具。

docker是一个开源的的应用容器引擎,docker的图标是一个鲸鱼上有很多集装箱,docker就是鲸鱼,他上面的集装箱就代表各个容器,docker容器在目前的环境中大部分公司docker容器已经代替了vm虚拟化,docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,开销很低。docker解决了服务器昂贵的问题,生产环境和测试环境不一致的问题。

二:vm和docker的区别

docker的优点

( 1 ) docker体积小,占用资源少,一般为MB。

( 2 )启动速度快,docker是容器,也是进程,容器进程启动速度比vm虚拟机快,启动几乎是秒级。

( 3 )docker容器时接近原生的,所以性能比较好。

( 4 )docker可以实现弹性、负载、动态的高可用策略。

vm的缺点

( 1 )vm体积大,占用资源也比较大,一般为GB。

( 2 )启动速度慢,vm是操作系统,所以启动比docker容器慢,一般都是分钟级。

( 3 )vm虚拟机并不是接近原生的,所以性能比docker容器差。

( 4 )vm可以实现备份、灾容、迁移等高可用策略。

三:docker的基本概念

docker的核心组件

docker的基本组成是由镜像(image)、容器(container)、仓库(repository)构成。

( 1 )docker镜像:

鲸鱼背上拖着的所有集装箱就是一个镜像

docker镜像是一个只读模板,基于创建Docker容器,类似于虚拟机镜像,可以将它理解为一个面向Docker 引擎的只读模板,包含了文件系统,镜像是创建 Docker 容器的基础。

( 2 )Docker容器:

是一个镜像的运行实例。容器由镜像创建,类似于一个轻量级的沙箱,Docker 利用容器来运行和隔离应用。容器是从镜像的应用运行实例,可以将其启动,开始,停止,删除,而这些容器都是相互隔离,互不可见的。镜像自 身是只读的,容器从镜像启动的时候, Docker 会在镜像的最上层创建一个可写层,镜像本身保持 不变。

( 3 )Docker 仓库:

Docker仓库是Docker镜像库,类似于代码仓库,是docker 集中存放镜像文件的场所。

四:docker容器的状态

docker容器一共有四种状态:运行、已暂停、重新启动、已退出。

五:docker常见的命令

docker start docker                  //启动docker
docker restart docker                //重启docker
docker stop   dokcer                 //关闭docker
docker status docker                 //查看docker的运行状态
docker version或docker info          //查看docker版本号信息
docker  --help                      //帮助命令

dokcer镜像命令

docker images                                     //查看镜像列表
docker search 镜像名                               //搜索镜像
docker pull  镜像名                                //拉取镜像
docker run   镜像名                                //运行镜像
docker rmi -f  镜像名/镜像id                       //删除一个镜像
docker rmi -f  $(docker images -aq)               //删除所有镜像
docker image rm 镜像名称/镜像ID                    //强制删除镜像
docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字 //保存镜像
docker load -i 镜像保存文件位置                     //加载镜像
docker tag 源镜像名:TAG 想要生成新的镜像名:新的TAG    //修改镜像标签

docker容器

docker ps                                                 //查看正在运行的容器列表
docker ps -a                                              //查看所有容器
docker run -it -d --name 要取的别名 镜像名:Tag /bin/bash    //运行一个容器
docker stop 容器名/容器ID                                  //停止容器
docker restart 容器ID/容器名                               //重启容器
docker start 容器ID/容器名                                 //启动容器
docker kill 容器ID/容器名                                  //kill掉容器
docker cp 容器ID/名称: 容器内路径  容器外路径                //从容器拷贝到本地
docker  cp 容器外路径 容器ID/名称: 容器内路径                //从本地拷贝到容器
docker rm -f 容器名/容器ID                                 //删除一个容器
docker rm -f $(dockerps -aq)                              //删除全部容器
docker exec -it 容器名/容器ID /bin/bash                    //进入容器
docker attach 容器名/容器ID                                //进入容器
Ctrl + p + q                                              //退出容器并且不会关闭容器
docker logs -f --tail=要查看末尾多少行 默认all 容器ID       //查看容器日志

六:centos安装docker容器

  1. Docker 要求 CentOS 系统的内核版本高于 3.10,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。通过 uname -r 命令查看你当前的内核版本

  1. 如果安装过请先卸载

yum remove docker \
           docker-client \
           docker-client-latest \
           docker-common \
           docker-latest \
           docker-latest-logrotate \
           docker-logrotate \
           docker-engine
  1. 安装依赖设置yum仓库

安装依赖:

yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
  1. 安装docker

yum install docker-ce docker-ce-cli containerd.io
  1. 启动并加入开机启动

systemctl start docker
systemctl enable docker

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

了解基础的docker容器化 的相关文章

随机推荐

  • RecyclerView详解

    RecyclerView 简称 RV 是作为 ListView 和 GridView 的加强版出现的 目的是在有限的屏幕之上展示大量的内容 因此 RecyclerView 的复用机制的实现是它的一个核心部分 RV 常规使用方式如下 解释说明
  • ARM开发板挂接NFS网络文件系统

    1 交叉线连开发板和PC 2 LINUX IP PC IP和开发板IP属同一网段 LINUX IP 192 168 1 20 PC IP 192 168 1 30 做中转作用 开发板IP 192 168 1 10 3 ubuntu默认是没有
  • mysql 建表语句 stored as_Druid 解析Hive建表语句解析报错

    Druid 版本 com alibaba druid spring boot starter 1 2 3 Hive 建表SQL create table ads data sale detail one23 like ads data sa
  • HashMap的底层实现原理

    HashMap的底层实现原理 一 HashMap的底层实现原理 HashMap 在 JDK1 8 之前的实现方式 数组 链表 JDK1 8之后的实现方式 数组 链表 红黑树 原理 当你 new 一个 HashMap 的时候 它底层并没有创建
  • 有哪些副业适合教师?有哪些是教师禁止的副业?

    有哪些副业适合教师 有哪些是教师禁止的副业 老师做副业选择挺多的 但是很多人一上来就说什么辅导班 做点小生意之类的 大家怕是还不知道对于在编教师有些兼职副业是做不了的 有些事没有禁止可以做的 还有一些是鼓励做的 那些副业是老师坚决不能碰的
  • Java初学之标识符

    目录 一 什么是标识符 二 标识符的命名规则 三 标识符的命名规范 一 什么是标识符 标识符 identifier 是指用来标识某个实体的一个符号 在不同的应用环境下有不同的含义 在java源程序中 凡是程序员有权利自己命名的单词都是标识符
  • 关于数据导入,教你几招

    前言 我们知道 数据库是存放数据的仓库 日常我们使用数据库也是为了存储数据 和数据库打交道总免不了要进行数据导入工作 工作中也可能遇到各种不同的数据导入需求 本篇文章主要分享下数据导入相关的小技巧 希望你能学到几招 1 弄清需求是关键 在进
  • AIX 常用命令

    查看所有vg对应的lv lsvg o lsvg i l 查看一个lv的详细细心 lv对应的日志文件 getlvcb AT fslv01 VGDA与ODM的同步 synclvodm v vght vg 名字 umount被占用删除 fuser
  • TortoiseGit 入门指南05:推送和拉取

    本节所讲内容均涉及到 远端版本库 版本库 的概念在 TortoiseGit 入门指南02 创建和克隆仓库 中提到过 它是工作目录下面的一个名为 git 的隐藏目录 我们每一次提交 每一个分支都会保存在版本库中 这个版本库就在我们电脑上的某个
  • C算法:冒泡排序算法(超级详细)!!!

    冒泡排序算法 冒泡排序是一种简单的排序算法 它也是一种稳定排序算法 其实现原理是重复扫描待排序序列 并比较每一对相邻的元素 当该对元素顺序不正确时进行交换 一直重复这个过程 直到没有任何两个相邻元素可以交换 就表明完成了排序 一般情况下 称
  • 常用的三种代码宏定义

    常用的三种代码宏定义 方式一 if endif 方式二 ifdef endif 方式一 if和方式二 ifdef别混搅 方式三 ifndef define else endif 方式一 if endif define LEDTEST 1 1
  • 文件解压缩操作

    文件解压缩操作 package com general system import java io File import java io FileOutputStream import java io IOException import
  • 无监督学习(含自编码器在MNIST上的图片重建实战)

    目录 1 无监督特征学习 1 1 PCA 主成分分析 1 2 稀疏编码 1 3 自编码器 2 自编码器在MNIST上的图片重建实战 3 自编码器变种 3 1 稀疏自编码器 3 2 堆叠自编码器 3 3 降噪自编码器 3 4 对抗自编码器 3
  • 【Qt5】频繁调用update()若干时间后无法自动重绘界面的问题

    最近在项目中遇到了这样的问题 程序的结构 主线程用于界面控制 线程1用于生成显示内容 线程2用于精确控制在正确的时刻控制界面显示生成的内容 实现方式 在线程2中直接调用显示控件的update 方法 让主线程重绘 运行效果 运行开始后的一段时
  • git创建本地仓库的三种方法

    首先新建文件夹E git repository repo1 然后打开该目录 接下来 有三种方式创建本地仓库 第一种方法 右键 单击git GUI here 点击创建仓库 然后关闭即可 此时可以看到新生成的文件夹 git 注意 git是隐藏文
  • Hive 分组取Top N

    成绩表S 字段sid cid score 求每门课程的前2名与后2名sid with a as select sid rank over distribute by cid sort by score rn rank over distri
  • 入门电机系列之3舵机

    入门电机系列 基于STM32硬件 本文章学习借鉴于野火团队资料 以表感谢 官网http products embedfire com 舵机的原理与应用 文章目录 入门电机系列 基于STM32硬件 前言 一 舵机的分类 舵机结构 舵机工作原理
  • 安装Java后端钉钉新的jar包指令

    install install file Dfile lib dingtalk sdk java taobao sdk java auto 1479188381469 20200403 jar DgroupId com taobao Dar
  • linux命令高亮显示,linux命令行高亮显示

    Loading gt 我们常用命令的朋友知道 纯黑白的看命令 时间长了很是不舒服 那么接下来就进行下命令行高亮的个性化的配置吧 想永久性的设置命令行高亮的效果 就需要修改 bashrc配置文件 一 进入 bashrc文件目录 bashrc这
  • 了解基础的docker容器化

    一 什么是docker容器 docker容器简单说来就是码头工具 docker是一个开源的的应用容器引擎 docker的图标是一个鲸鱼上有很多集装箱 docker就是鲸鱼 他上面的集装箱就代表各个容器 docker容器在目前的环境中大部分公