Docker 速查手册:从入门到精通的容器化指南

Docker 速查手册:从入门到精通的容器化指南

【免费下载链接】docker-cheat-sheet Docker Cheat Sheet 【免费下载链接】docker-cheat-sheet 项目地址: https://gitcode.com/gh_mirrors/do/docker-cheat-sheet

前言

Docker 作为当今最流行的容器化技术,已经彻底改变了应用程序的开发、交付和运行方式。本手册将系统性地介绍 Docker 的核心概念、常用命令和最佳实践,帮助开发者快速掌握这一强大工具。

Docker 基础概念

什么是 Docker?

Docker 是一个开源的容器化平台,它允许开发者将应用程序及其依赖打包成轻量级、可移植的容器。这些容器可以在任何支持 Docker 的环境中运行,确保了环境一致性。

容器与虚拟机的区别

容器与传统虚拟机(VM)的主要区别在于:

  • 轻量级:容器共享主机操作系统内核,无需完整的操作系统
  • 快速启动:容器可以在毫秒级别启动
  • 高效资源利用:容器占用资源更少,密度更高
  • 一致性:开发、测试和生产环境完全一致

安装与配置

系统要求

  • Linux:内核版本3.10或更高
  • macOS:10.8 "Mountain Lion"或更新版本
  • Windows:Windows 10专业版/企业版或Windows Server 2016+

安装方法

Linux系统
curl -fsSL https://get.docker.com | sh
macOS系统

推荐使用Docker Desktop for Mac,可通过Homebrew安装:

brew install --cask docker
Windows系统

安装Docker Desktop for Windows,需确保:

  1. 启用Hyper-V功能
  2. 对于Intel处理器,启用虚拟化技术

容器操作指南

容器生命周期管理

  1. 创建容器

    docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
    
  2. 启动容器

    docker start [OPTIONS] CONTAINER
    
  3. 运行容器(创建+启动):

    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
    
  4. 停止容器

    docker stop [OPTIONS] CONTAINER
    
  5. 删除容器

    docker rm [OPTIONS] CONTAINER
    

常用运行选项

  • -d:后台运行(守护模式)
  • -it:交互式终端
  • --name:指定容器名称
  • --rm:容器退出后自动删除
  • -v:挂载数据卷
  • -p:端口映射

容器监控与调试

  1. 查看运行中的容器

    docker ps
    
  2. 查看所有容器(包括已停止的):

    docker ps -a
    
  3. 查看容器日志

    docker logs [OPTIONS] CONTAINER
    
  4. 进入运行中的容器

    docker exec -it CONTAINER /bin/bash
    
  5. 查看容器资源使用

    docker stats
    

镜像管理

镜像基本操作

  1. 列出本地镜像

    docker images
    
  2. 拉取镜像

    docker pull [OPTIONS] NAME[:TAG]
    
  3. 构建镜像

    docker build [OPTIONS] PATH
    
  4. 删除镜像

    docker rmi [OPTIONS] IMAGE
    

镜像导入导出

  1. 导出镜像为tar文件

    docker save -o filename.tar IMAGE
    
  2. 从tar文件导入镜像

    docker load -i filename.tar
    

网络与存储

网络配置

  1. 列出网络

    docker network ls
    
  2. 创建网络

    docker network create [OPTIONS] NETWORK
    
  3. 连接容器到网络

    docker network connect [OPTIONS] NETWORK CONTAINER
    

数据管理

  1. 创建数据卷

    docker volume create [OPTIONS] VOLUME
    
  2. 挂载主机目录

    docker run -v /host/path:/container/path IMAGE
    
  3. 使用命名卷

    docker run -v volume_name:/container/path IMAGE
    

Dockerfile最佳实践

基础指令

  1. FROM:指定基础镜像
  2. RUN:执行命令
  3. COPY/ADD:添加文件
  4. CMD/ENTRYPOINT:指定容器启动命令
  5. ENV:设置环境变量
  6. EXPOSE:声明暴露端口

优化建议

  1. 使用.dockerignore文件排除不必要的文件
  2. 多阶段构建减少镜像大小
  3. 合并RUN指令减少镜像层数
  4. 使用特定标签而非latest
  5. 最小化镜像(如使用Alpine基础镜像)

Docker Compose

Docker Compose用于定义和运行多容器应用。

基本命令

  1. 启动服务

    docker-compose up
    
  2. 后台启动

    docker-compose up -d
    
  3. 停止服务

    docker-compose down
    
  4. 查看服务状态

    docker-compose ps
    

Compose文件示例

version: '3'
services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html
  db:
    image: postgres:13
    environment:
      POSTGRES_PASSWORD: example

安全最佳实践

  1. 避免使用root用户运行容器
  2. 定期更新基础镜像
  3. 扫描镜像中的问题
  4. 限制容器资源使用
  5. 使用只读文件系统
  6. 限制容器能力

常见问题排查

  1. 容器无法启动

    • 检查日志:docker logs CONTAINER
    • 检查端口冲突
    • 验证环境变量
  2. 磁盘空间不足

    • 清理无用镜像:docker system prune
    • 清理无用卷:docker volume prune
  3. 网络连接问题

    • 检查网络配置:docker network inspect NETWORK
    • 验证DNS设置

高级技巧

  1. 资源限制

    docker run -m 512m --cpus=1.5 IMAGE
    
  2. GPU支持

    docker run --gpus all IMAGE
    
  3. 构建缓存管理

    docker build --no-cache -t IMAGE .
    
  4. 多平台构建

    docker buildx build --platform linux/amd64,linux/arm64 -t IMAGE .
    

结语

本手册涵盖了Docker的核心功能和常用操作,适合从入门到进阶的学习参考。随着Docker生态系统的不断发展,建议定期查阅官方文档获取最新信息。通过实践这些命令和最佳实践,您将能够高效地使用Docker来简化和优化您的开发工作流程。

【免费下载链接】docker-cheat-sheet Docker Cheat Sheet 【免费下载链接】docker-cheat-sheet 项目地址: https://gitcode.com/gh_mirrors/do/docker-cheat-sheet

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值