初识docker

116 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第3天,点击查看活动详情

下载

官方文档
下载地址

开始

安装成功后,是这个界面

image.png

命令行执行

docker run -d -p 80:80 docker/getting-started
  • -d 在后台运行,启动成功后会打印容器id
  • -p 80:80- 将主机的 80 端口映射到容器中的 80 端口
  • docker/getting-started- 要使用的图像(执行的镜像名称)

命令会在本地下载并启动docker/getting-started镜像

~ $ docker run -d -p 80:80 docker/getting-started
Unable to find image 'docker/getting-started:latest' locally
latest: Pulling from docker/getting-started
540db60ca938: Pull complete 
0ae30075c5da: Pull complete 
9da81141e74e: Pull complete 
b2e41dd2ded0: Pull complete 
7f40e809fb2d: Pull complete 
758848c48411: Pull complete 
23ded5c3e3fe: Pull complete 
38a847d4d941: Pull complete 
Digest: sha256:10555bb0c50e13fc4dd965ddb5f00e948ffa53c13ff15dcdc85b7ab65e1f240b
Status: Downloaded newer image for docker/getting-started:latest
8bc8dcde4b87fb57620d0df43f0da3b14688a2c27f15709692ed59497f2127c4

切换到Images,可以看到刚刚pull的镜像

image.png

切换到Containers,可以看到已经在运行的容器,可以使用浏览器访问教程

image.png

那么,这整个过程中发生了什么?

  • 启动了一个nginx服务
  • 静态化一些html页面

我们通过Inspect选项或者在容器界面直接点击镜像名称,可以查看到镜像详细构建过程

image.png

image.png

可以通过CLI入口进入容器,查看下物理文件

image.png

再理解概念

  • Container,一个完全独立的本机进程,和其他所有进程完全隔离。
  • Image,类似于我们安装操作系统时所需要的那个iso光盘镜像,通过运行这个镜像来完成各种应用的部署
  • Layer,层,每个docker镜像就像一张千层饼。

参考文章

给零基础同学讲清楚docker