Docker 使用指南

Docker 是一个开源的平台,用于开发、部署和运行应用程序。本文将介绍 Docker 的核心概念以及常见操作,帮助您快速入门。


目录

  1. 什么是 Docker
  2. Docker 基本概念
  3. 安装 Docker
  4. 常用 Docker 命令
  5. 创建 Docker 镜像
  6. 使用 Docker Compose
  7. 最佳实践

什么是 Docker

Docker 是一个容器化平台,它使用轻量级的虚拟化技术来打包和运行应用程序及其依赖。通过 Docker,开发者可以确保应用程序在不同环境下的一致性运行。

主要优势:

  • 便携性:可以轻松地在不同的机器上运行。
  • 隔离性:容器之间独立运行,不会互相干扰。
  • 高效性:启动迅速,占用资源少。

Docker 基本概念

  1. 镜像(Image): 应用程序及其依赖的只读模板。
  2. 容器(Container): 镜像的运行实例,是一个轻量级的独立环境。
  3. Dockerfile: 用于定义镜像内容的文本文件。
  4. Docker Hub: 官方提供的镜像存储库,包含大量开源镜像。

安装 Docker

在您的系统上安装 Docker:

  1. Windows/MacOS 用户

  2. Linux 用户

    • 使用以下命令安装(以 Ubuntu 为例):
      1
      2
      3
      4
      sudo apt update
      sudo apt install -y docker.io
      sudo systemctl start docker
      sudo systemctl enable docker
  3. 验证安装:

    1
    docker --version

常用 Docker 命令

  1. 镜像管理

    • 拉取镜像:
      1
      docker pull <镜像名>
    • 列出镜像:
      1
      docker images
    • 删除镜像:
      1
      docker rmi <镜像ID>
  2. 容器管理

    • 启动容器:
      1
      docker run -it --name <容器名> <镜像名>
    • 查看运行中的容器:
      1
      docker ps
    • 停止容器:
      1
      docker stop <容器ID>
    • 删除容器:
      1
      docker rm <容器ID>
  3. 查看日志

    1
    docker logs <容器ID>

创建 Docker 镜像

  1. 编写 Dockerfile

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # 使用基础镜像
    FROM ubuntu:latest

    # 设置工作目录
    WORKDIR /app

    # 复制文件到容器中
    COPY . /app

    # 安装依赖
    RUN apt update && apt install -y python3

    # 设置启动命令
    CMD ["python3", "app.py"]
  2. 构建镜像

    1
    docker build -t <镜像名> .
  3. 运行镜像

    1
    docker run -it <镜像名>

使用 Docker Compose

Docker Compose 是一个工具,用于定义和运行多容器应用程序。

  1. 编写 docker-compose.yml 文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    version: '3.8'
    services:
    web:
    image: nginx:latest
    ports:
    - "8080:80"
    app:
    build: .
    volumes:
    - .:/app
    ports:
    - "5000:5000"
  2. 启动服务

    1
    docker-compose up
  3. 停止服务

    1
    docker-compose down

最佳实践

  1. 使用轻量级基础镜像,例如 alpine
  2. 定期清理未使用的镜像和容器:
    1
    docker system prune
  3. 将敏感信息(如密码)存储在环境变量中。
  4. 使用多阶段构建优化镜像大小。
  5. 定期更新镜像和容器,保持安全性。

希望本指南对您学习和使用 Docker 有所帮助!