Docker是什么?
Docker 是一款开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包装系统。
Docker的构成(核心)
1.镜像(Image)
- Docker 镜像是一个特殊的文件系统,它包含了运行应用所需的所有代码、运行时、库、环境变量和配置文件。
- 镜像不包含动态数据,其内容在构建之后不会被改变。它是构建容器的基础。
- 你可以把镜像想象成一个模板或快照。例如,一个
ubuntu:20.04镜像就是一个包含了 Ubuntu 20.04 操作系统的模板。
2.容器(Container)
- 容器是镜像的运行实例。它是一个独立的、隔离的运行环境。
- 当你基于一个镜像启动一个容器时,Docker 会在镜像的基础上创建一个可写的层,所有的运行时数据都存储在这个层中。
- 你可以把容器想象成一个正在运行的虚拟机或一个应用进程。多个容器可以基于同一个镜像启动,它们之间是完全隔离的。
3.仓库(Repository)
- Docker 仓库是用来集中存放和分发 Docker 镜像的地方。
- 它就像一个代码仓库(如 GitHub),但存储的是 Docker 镜像。
- 最著名的公共仓库是 Docker Hub (https://hub.docker.com/),里面有大量官方和社区贡献的镜像。你也可以搭建自己的私有仓库。
流程总结:
- 开发者 ** 构建(build)** 一个镜像,包含了应用和其依赖。
- 这个镜像被 ** 推送(push)** 到一个仓库中。
- 在任何需要运行这个应用的机器上,从仓库 ** 拉取(pull)** 这个镜像。
- 基于这个镜像 ** 运行(run)** 一个容器,应用就在这个隔离的环境中启动了。
Docker的安装
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker配置镜像加速器请看另一个文档
Docker镜像加速器(国内)
Docker命令行使用
# 查看正在运行的容器 docker ps
# 或 docker container ls
# 查看所有容器(包括停止的) docker ps -a
# 或 docker container ls -a
没有回应