Docker 容器化部署实战

Docker 已经成为现代服务器运维不可或缺的工具。本文将带你从零基础开始,一步步掌握 Docker 的核心概念和实战技巧。

一、Docker 安装

# 更新系统包
sudo apt update && sudo apt upgrade -y

# 安装依赖
sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common

# 添加 Docker GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

# 添加 Docker 仓库
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu noble stable"

# 安装 Docker
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io

# 启动并设置开机自启
sudo systemctl enable --now docker

二、常用命令

# 运行容器
docker run -d --name my-nginx -p 8080:80 nginx:latest

# 列出运行中的容器
docker ps

# 查看容器日志
docker logs my-nginx

# 进入容器
docker exec -it my-nginx /bin/bash

# 停止容器
docker stop my-nginx

三、Dockerfile 构建

FROM ubuntu:22.04
LABEL maintainer="admin@example.com"
WORKDIR /app
COPY . .
RUN apt update && apt install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

四、Docker Compose

version: '3.8'
services:
  nginx:
    image: nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
    restart: always

五、生产环境最佳实践

  1. 安全配置:不要使用 root 用户运行容器,在 Dockerfile 中创建普通用户
  2. 资源限制:使用 --memory 和 --cpus 参数限制容器资源使用
  3. 日志管理:配置日志轮转,避免日志文件过大
  4. 定期清理:定期清理未使用的镜像、容器和数据卷

六、常见问题排查

# 查看容器日志
docker logs container-name

# 查看容器资源使用情况
docker stats

# 查看容器详情
docker inspect container-name

通过本文的学习,你应该能够熟练使用 Docker 进行应用部署和管理。持续实践和积累经验,你将能够构建出高效、稳定的容器化部署方案。