docker入门之一:docker基础概念与安装

news2024/9/30 15:36:17
  • 1. Docker简单介绍
    • 1.1. 什么是docker?
    • 1.2. Docker和传统虚拟机
    • 1.3. 为什么使用docker
    • 1.4. docker架构
  • 2. Docker安装
    • 2.1. docker版本命名
    • 2.2. docker安装
    • 2.3. docker卸载
    • 2.4. docker镜像加速器

1. Docker简单介绍

1.1. 什么是docker?

google go语言开发,基于Linux内核的cgroup,namespace,以及AUFS类的Union FS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其他的隔离的进程,因此称其为容器

1.2. Docker和传统虚拟机

1.3. 为什么使用docker

1.4. docker架构

2. Docker安装

2.1. docker版本命名


重点:

  • CE
    • 社区版
    • 免费
  • EE
    • 企业版
    • 收费

2.2. docker安装

  1. 系统要求
    Docker CE支持Centos7,内核不低于3.10
[hadoop@hadoop101 ~]$ uname -r
3.10.0-957.27.2.el7.x86_64
  1. 卸载旧版本docker
[hadoop@hadoop101 ~]$ sudo yum remove docker
  1. 安装docker-ce
[hadoop@hadoop101 ~]$ sudo yum install docker-ce
# 发现没有package

# 需要安装一些依赖

[hadoop@hadoop101 ~]$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

[hadoop@hadoop101 ~]$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

[hadoop@hadoop101 ~]$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 脚本安装docker
curl -fsSL https://get.docker.com -o get-docker.sh

sudo sh get-docker.sh --mirror Aliyun
  1. 启动docker
# 设置开机启动
sudo systemctl enable docker

sudo systemctl start docker

# 查看docker是否安装成功
[hadoop@hadoop101 ~]$ sudo docker info

# 查看docker版本信息
[hadoop@hadoop101 ~]$ docker --version

  1. 建立docker用户组
    当前环境下,执行docker命令必须使用sudo,非常麻烦。我们可以创建docker,把当前用户加入docker用户组。
[hadoop@hadoop101 ~]$ sudo groupadd docker

# hadoop是当前用户
[hadoop@hadoop101 ~]$ sudo usermod -aG docker hadoop

[hadoop@hadoop101 ~]$ logout
  1. 测试docker是否安装成功
# 启动一个基于hello-world镜像的容器
[hadoop@hadoop101 ~]$ docker run hello-world

2.3. docker卸载

  1. 删除docker安装包
sudo remove docker-ce
  1. 删除docker镜像
sudo rm -rf /var/lib/docker

2.4. docker镜像加速器

docker官方和国内云服务供应商提供了国内加速器服务:

  • docker官方:registry mirror
  • 阿里云加速器
  • DaoCloud加速器
  • 163加速器
  1. 在/etc/docker路径下添加文件daemon.json
{
    "registry-mirrors":[
        "http://hub-mirror.c.163.com"
    ]
}
  1. 重启docker服务并生效
[hadoop@hadoop101 docker]$ sudo systemctl daemon-reload
[hadoop@hadoop101 docker]$ sudo systemctl restart docker
# 查看Registry Mirrors是否修改
[hadoop@hadoop101 docker]$ docker info
  1. 测试效果
# 列出所有的容器
[hadoop@hadoop101 docker]$ docker ps -a
1c42f7a46920 hello-world "/hello" 

# 删除容器
[hadoop@hadoop101 docker]$ docker rm -f 1c42f7a46920

# 删除镜像
[hadoop@hadoop101 docker]$ docker rmi hello-world

[hadoop@hadoop101 docker]$ docker run hello-world

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

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

相关文章

24-Tomcat

目录 1.Tomcat是什么? 2.版本号 3.下载 4.目录介绍 4.1.bin目录 4.2.conf目录 4.3.logs目录 4.4.webapps目录 5.启动服务器 PS:解决Tomcat乱码问题 PS:Tomcat点击启动,控制台一闪而过,啥也没有解决方案 PS…

【花雕学AI】4月5日,ChatGPT中国财经背景分析:昨天沪指重返3300点,这说明了什么?

在这里插入图片描述 附录: 一、ChatGPT是一个可以和你聊天的人工智能程序,它可以用文字回答你的问题,也可以根据你的提示写出文章、歌词、代码等内容。ChatGPT是由一个叫OpenAI的机构开发的,它使用了一种叫做GPT的技术&…

TCP协议的相关特性(续)

TCP协议的相关特性🔎滑动窗口🔎流量控制🔎拥塞控制🔎延时应答🔎捎带应答🔎面向字节流(粘包问题)🔎异常情况🔎总结关于 确认应答 超时重传, 连接管理 请参考: 点击这里 &#x1f50e…

IT知识百科:什么是基站?

一、基站介绍 基站(Base Station),也称为基站站点或基站设备,是无线通信网络中的关键设备之一。基站用于与移动设备(如手机、无线网卡等)进行通信和数据传输,实现无线通信覆盖。 二、基站的功…

基于Python机器学习、深度学习技术提升气象、海洋、水文领域实践应用

Python是功能强大、免费、开源,实现面向对象的编程语言,能够在不同操作系统和平台使用,简洁的语法和解释性语言使其成为理想的脚本语言。除了标准库,还有丰富的第三方库,Python在数据处理、科学计算、数学建模、数据挖…

Web服务器压力测试

Web服务器压力测试 使用WebBench去进行网站的压力测试 1、去github下载项目源码webbench 2、download到本地 3、将压缩包上传到虚拟机上 4、解压,使用命令:unzip 压缩包名 5、 cd WebBench-mask6、构建项目 makemake install7、上述动作完成后&…

【Vue3】如何用Vue CLI 创建一个Vue3的初始化项目

第一步、安装Vue Cli npm install -g vue/cli 安装成功后,就可以在命令行工具中,使用vue命令。 检测是否安装成功,可以用 vue -V 出现版本号,代表安装成功。 第二步、创建项目 为了方便管理项目,我先在 github 创建了…

队列实现图书信息管理(C语言)

文章目录Queue.hmain.cQueue.c用队列实现一个图书信息管理,这里放一下有哪些文件。(ps:我之前写的是学生信息管理,但是有人说我们的作业是写图书,就该了下内容,没有改文件名)队列是用链表实现的…

***大论文中插入Visio不失真方法:word插入viso图片方法

***大论文中插入Visio不失真方法:word插入viso图片方法1、可以直接导出emf2、如果利用emf导致字符间距过大,可以选择下面方式1、可以直接导出emf 导出emf方法: 打开visio --> 另存为 --> 选择emf格式文件 打开word --> 插入图片&a…

6 计时器(三)

6.4 输出比较演示** 演示1:PWM驱动呼吸灯** 函数解释: 输出比较单元(掌握) void TIM_OC1Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct); void TIM_OC2Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCIni…

对Redis 的数据结构的更深刻理解

文章目录简单动态字符串SDS与C字符串的区别链表字典哈希算法 —— 添加新键值对的过程rehashrehash一般过程渐进式rehash渐进式rehash的详细步骤跳跃表实现整数集合intset升级步骤升级好处降级压缩列表 ziplistziplistnode连锁更新对象字符串对象列表对象哈希对象编码转换集合对…

RK356X 解除UVC摄像头预览分辨率1080P限制

平台 RK3566 Android 11 概述 UVC: USB video class(又称为USB video device class or UVC)就是USB device class视频产品在不需要安装任何的驱动程序下即插即用,包括摄像头、数字摄影机、模拟视频转换器、电视卡及静态视频相机…

详解C++中的命名空间(namespace)

个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【C之路】 目录C关键字(C98)命名冲突命名空间命名空间的定义局部域和全局域的关系命名空间域小结命名空间中可以定义哪些内容嵌套命名空间…

音视频开发常用分析工具介绍

综述 工欲善其事,必先利其器;兵马未到,粮草先行。 在音视频开发过程中,利用工具可以更方便、更直观、更快捷的分析音视频的数据,便于开发过程中分析、调试和解决问题。 现总结一些音视频开发过程中常用的分析工具。…

Android library native 代码不能调试解决方法汇总

android native开发会碰到native代码无法调试问题,而app主工程中的native代码是可以调试的。如果项目中存在多个module,那么在application模块中依赖library模块,并且library模块中有native代码的时候,当debug library模块中的这些…

如何高效获取数据价值?

导读:上一篇《大数据架构知识点详解:国产数据库创新、湖仓一体实践…》中我们阐述了四大体系之数据架构体系,解释了云原生大数据实践、国产数据库创新变革、湖仓一体落地实践、OLAP 发展趋势四个论坛的架构思路。 接下来是四大体系之二数据效…

【Linux】2、Linux 的基本命令

目录一、Linux 的目录结构二、Linux 命令三、ls 命令四、cd五、pwd六、特殊路径符七、mkdir八、touch九、cat 命令十、more十一、cp十二、mv十三、rm十四、which十五、find十六、grep十七、wc十八、管道符十九、echo二十、重定向符二十一、tail 命令一、Linux 的目录结构 &…

直播观看指南|SOFA 五周年,Live Long and Prosper!

SOFA 五周年活动将于 2023 年 4 月 15 日(周六)12:00 在北京朝阳区恒通国际创新园 C6 栋 C work 举行!期待社区的小伙伴和对开源感兴趣的小伙伴们一起来现场玩哦~当然啦,不能来现场的小伙伴们也别担心,我们…

第二十一章 案例TodoList之新增数据

前一小节,我们已经完成了数据的动态展示,现在我们要完成数据的动态添加。如何添加呢?肯定是要通过Header组件来添加,但是Header组件如何将收集的任务数据,交给App组件并更新状态数据呢? 在Header组件中收集…

实现vue的条件渲染

我的需求是根据设备不同的状态 渲染不同的标签。设备状态用device_State表示。 在线上面是一个vue的标签,我有一个数据state ,如何让这个标签根据数据的取值 ,修改内容,如state1时,标签修改为离线 要根据数据的取值动态…