天天在捣鼓Docker,你是否真正的把握住了?

简介: 📢Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。

📢Docker本身并不是容器,它是创建容器的工具,是应用容器引擎。


📢想要搞懂Docker,两句口号就行。

第一句是“Build, Ship and Run”(搭建、发送、运行,三板斧)

第二句是“Build once,Run anywhere”(搭建一次,到处能用)

1️⃣💭虚拟机和Docker的对比

  • 虚拟机属于虚拟化技术,Docker这样的容器技术。
  • 虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare)。而容器技术恰好没有这些缺点,它不需要虚拟出整个操作系统,只需要虚拟一个小规模的环境(类似“沙箱”)。

image.png

image.png

2️⃣💬Docker组件

  • 客户端、宿主机、仓库
  • images、Container、Registry

image.png

Image

image是分层的,并且每一层都可以添加改变删除文件,成为一个新的image。不同的image可以共享相同的layer。image本身是read-only的。

image.png

Container

Container由image创建,并在image layer上创建一可读写的Container layer(R/W层)。Writeble Container层的读写操作仅是记录,并不会对下面的read-only Image产生影响。

image.png

Registry

仓库,用于存放镜像的地方(分为公有和私有仓库)。可以直接使用docker pull命令将仓库中的镜像拉到本地,默认的仓库Docker的官方仓库Docker Hub Registry。

3️⃣🎈Docker命令总览

能把下面两幅图上的命令全都看懂并且会操作说明都把握住了😚

image.png

image.png

4️⃣🍉DockerFile命令

DockerFile构建属于自己的最完美的镜像

image.png

image.png

官方的Centos7为例

FROM scratch
ADD centos-7-x86_64-docker.tar.xz /
LABEL \
    org.label-schema.schema-version="1.0" \
    org.label-schema.name="CentOS Base Image" \
    org.label-schema.vendor="CentOS" \
    org.label-schema.license="GPLv2" \
    org.label-schema.build-date="20201113" \
    org.opencontainers.image.title="CentOS Base Image" \
    org.opencontainers.image.vendor="CentOS" \
    org.opencontainers.image.licenses="GPL-2.0-only" \
    org.opencontainers.image.created="2020-11-13 00:00:00+00:00"
CMD ["/bin/bash"]

📢下一篇文章带兄弟们一起学习Docker更深层的东西,看看年薪20W的工程师是怎样用的。

📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

📢未来很长,值得我们全力奔赴更美好的生活✨


相关文章
|
12月前
|
运维 Kubernetes Cloud Native
【k8s 系列】k8s 学习三,docker回顾,k8s 起航
【k8s 系列】k8s 学习三,docker回顾,k8s 起航
111 2
|
JSON 应用服务中间件 数据库
docker积累
docker积累
|
存储 安全 前端开发
Docker的七项优秀实践
Docker的七项优秀实践
187 0
|
Kubernetes Linux Go
docker 与 podman 的故事:一个方兴未艾,一个异军突起
podman 虽然与 docker 有替代关系,但是在“弃用 docker”事件中,podman 并非是主角。Kubernetes 所进行的“弃用 docker”的主角是 CRI 的其他实现方式,而由 RedHat 推出的 podman 则更加前沿。在现实的应用中,docker 方兴未艾,podman 却已经异军突起。
315 1
docker 与 podman 的故事:一个方兴未艾,一个异军突起
|
运维 NoSQL Linux
Docker 理念 | 学习笔记
快速学习 Docker 理念
Docker 理念 | 学习笔记
|
运维 NoSQL Go
Docker 理念|学习笔记
快速学习 Docker 理念
Docker 理念|学习笔记
|
网络协议 安全 Java
《菜农升职记》之 Docker网络
本文主要介绍 docker 网络
143 0
|
运维 程序员 Linux
Docker 系列 _ 01_ 一念缘起
人们只有在经历过诸多痛苦之后,才会相信这“缘分”的存在。
123 0
Docker 系列 _ 01_ 一念缘起
|
Ubuntu Linux API
Docker架构都不知道?这不很尴尬吗
Docker架构都不知道?这不很尴尬吗
200 0
Docker架构都不知道?这不很尴尬吗
|
Kubernetes 安全 Java
Docker 员工自述:Docker 为什么输给了Kubernetes?
Docker 还活着。尽管它近两三年的境况并不理想,但它还在苦苦挣扎,试图找到自己的商业价值。就在上周,Docker 宣布更改 Docker 软件的许可条款。在不久的将来,为大企业工作的 Docker Desktop 专业用户需要付费订阅才能继续使用。 与此同时,Docker 还推出了一项专门针对企业的新订阅计划,即 Docker Business。新条款于 8 月 31 日生效,但 Docker 给出了截至 2022 年 1 月 31 日的宽限期,以便开发人员遵守新服务协议并在有需要的时候购买付费订阅。
124 0