Docker 入门快速上手指南
Docker 是一款轻量级的容器技术,可以帮助开发人员快速、方便地构建、打包、分享、运行应用程序。下面是 Docker 入门快速上手指南的完整攻略。
安装 Docker
首先需要在本地机器上安装 Docker。可以参考 Docker 官方网站提供的安装指南。安装完成后可以通过运行以下命令来检查是否安装成功:
docker version
基础概念理解
在了解如何使用 Docker 之前,需要先掌握一些基本的 Docker 概念。
镜像
Docker 镜像是一个轻量级的、独立运行的软件包,其中包含了运行一个应用程序所需要的代码、运行环境、依赖和配置等信息。
容器
Docker 容器是 Docker 镜像的一个运行实例。也就是说,Docker 镜像启动后就变成一个 Docker 容器。Docker 容器包含了运行应用程序的所有内容和依赖,可以运行在任何一台支持 Docker 的机器上。
仓库
Docker 仓库是用来存储和分享 Docker 镜像的地方。Docker 官方提供了一个公共仓库 Docker Hub,也可以自己搭建私有仓库。
Docker 命令使用
在理解了 Docker 的基本概念之后,接下来就可以使用 Docker 命令来创建、运行和管理 Docker 容器了。下面是一些常用的 Docker 命令。
获取 Docker 镜像
要使用 Docker 镜像,首先需要从 Docker 仓库中获取镜像。可以使用以下命令来获取 Ubuntu 镜像:
docker pull ubuntu
执行以上命令后,Docker 将从 Docker Hub 上拉取最新的 Ubuntu 镜像到本地。
运行 Docker 容器
使用以下命令来运行 Ubuntu 镜像创建 Docker 容器:
docker run -it ubuntu
该命令将会启动一个名为 ubuntu 的新容器,并在终端上打印出容器内的命令行提示符。使用 -it
参数可以进入交互模式。
容器管理
使用以下命令来查看当前运行中的 Docker 容器:
docker ps
使用以下命令来停止指定名称为 ubuntu 的容器:
docker stop ubuntu
使用以下命令来删除指定名称为 ubuntu 的容器:
docker rm ubuntu
Dockerfile 构建镜像
Dockerfile 是一个文本文件,其包含了一系列 Docker 命令,可以用来自动构建一个 Docker 镜像。以下是一个简单的 Dockerfile 示例:
# 使用官方的 Python 运行环境作为父镜像
FROM python:3.7
# 将当前目录下的文件都复制到容器的 /app 目录下
COPY . /app
# 将工作目录设置为 /app
WORKDIR /app
# 使用 pip 安装所需的 Python 包
RUN pip install -r requirements.txt
# 将容器的 80 端口映射到主机的 80 端口
EXPOSE 80
# 在容器启动时自动执行的命令
CMD ["python", "app.py"]
可以使用以下命令来构建镜像:
docker build -t my-python-app .
使用 -t
参数可以指定镜像名称和标签,-f
参数可以指定 Dockerfile 路径。
示例说明
下面是两个基于 Docker 的示例。
示例一:使用 Docker 运行一个 Node.js 应用程序
- 获取 Node.js 镜像:
shell
docker pull node
- 在本地创建一个 Node.js 应用程序
app.js
(内容如下):
javascript
const http = require("http");
const server = http.createServer((req, res) => {
res.end("Hello World!");
});
const port = 3000;
server.listen(port, () => {
console.log(`server is listening on port ${port}`);
});
- 使用以下命令来运行该 Node.js 应用程序:
shell
docker run -p 3000:3000 -v $(pwd):/app -w /app node node app.js
该命令将会使用 Node.js 镜像创建一个新容器,并将主机的 3000 端口和容器的 3000 端口做端口映射。
示例二:使用 Docker 部署一个 Django 应用程序
- 创建一个 Dockerfile 文件(内容如下):
dockerfile
FROM python:3.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/
- 构建 Docker 镜像:
shell
docker build -t my-django-app .
- 运行 Docker 镜像:
shell
docker run -it -p 8000:8000 my-django-app
该命令将会使用 my-django-app 镜像创建一个新容器,并将主机的 8000 端口和容器的 8000 端口做端口映射。在容器内运行的 Django 应用程序可以通过访问 http://127.0.0.1:8000/ 在本地访问到。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Docker 入门快速上手指南 - Python技术站