Docker 是什么

Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。

Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器里运行,就好像在真实的物理机上运行一样。有了 Docker,就不用担心环境问题。

总体来说,Docker 的接口相当简单,用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

Docker 三大核心概念

docker 三大核心概念是:镜像,容器,仓库

  • **镜像:**一个只读的用于创建容器的模板,一个镜像就是一个应用运行的基本环境,镜像是创建容器的基础。
  • **容器:**容器是镜像的实例,多个容器相互隔离,容器与宿主之间可以通过端口(port),数据卷(volumes),网络(network)等进行通信。
  • **仓库:**仓库是存放容器的地方,用于容器的共享和使用

Dockerfile 是什么

Dockerfile 是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker 通过读取 Dockerfile 中的指令自动生成映像。

docker build 命令用于从 Dockerfile 构建映像。可以在 docker build 命令中使用-f 标志指向文件系统中任何位置的 Dockerfile。

利用 Dockerfile 来创建 Docker 容器

vi Dockerfile
FROM node:latest
RUN echo Hello docker
# ...执行node相关命令
# 暴漏3000端口
EXPOSE 3000/tcp

通过以下命令创建容器

sudo docker build -t blog .

运行结果如下

查看容器命令

docker images

一个简单的 docker 镜像就创建好了,接下来可以在 Dockerfile 执行我们想要的操作

参考资料