Docker 核心概念

Docker 是一种容器化技术,通过镜像(Image)和容器(Container)实现轻量级虚拟化。镜像包含应用及其依赖,容器是镜像的运行实例。Dockerfile 用于定义镜像构建步骤。

安装 Docker

Linux 系统通过以下命令安装:

curl -fsSL https://get.docker.com | sh
sudo systemctl start docker
sudo systemctl enable docker

Windows/macOS 需下载 Docker Desktop 并安装。

运行第一个容器

测试 Docker 是否正常工作:

docker run hello-world

此命令会自动拉取官方测试镜像并运行容器。

镜像管理

拉取 Ubuntu 镜像:

docker pull ubuntu:20.04

查看本地镜像列表:

docker images

删除镜像:

docker rmi <IMAGE_ID>

容器操作

启动交互式容器:

docker run -it ubuntu:20.04 /bin/bash

查看运行中的容器:

docker ps

查看所有容器(包括已停止):

docker ps -a

停止容器:

docker stop <CONTAINER_ID>

删除容器:

docker rm <CONTAINER_ID>

构建自定义镜像

创建 Dockerfile 文件:

FROM alpine:latest
RUN apk add --no-cache python3
COPY app.py /app/
WORKDIR /app
CMD ["python3", "app.py"]

构建镜像:

docker build -t my-python-app .

数据持久化

使用卷(Volume)保存数据:

docker run -v /host/path:/container/path ubuntu

命名卷更易管理:

docker volume create my_volume
docker run -v my_volume:/container/path ubuntu

网络配置

查看网络列表:

docker network ls

创建自定义网络:

docker network create my_network

运行容器并连接网络:

docker run --network=my_network ubuntu

常用组合命令

清理无用资源:

docker system prune

查看容器日志:

docker logs <CONTAINER_ID>

进入运行中的容器:

docker exec -it <CONTAINER_ID> /bin/bash

实际应用示例

部署 Nginx 服务:

docker run -d -p 8080:80 --name my-nginx nginx

此命令会在后台运行 Nginx 容器,并将主机 8080 端口映射到容器的 80 端口。

更多推荐