Docker命令大全:从基础到高级实战指南

Docker命令大全:从基础到高级实战指南

Docker作为现代容器化技术的核心工具,其命令体系是开发运维的必备技能。本文将系统整理常用命令,助您高效管理容器生态。


一、基础命令篇

1. 镜像管理

bash 复制代码
# 拉取镜像
$ docker pull nginx:latest

# 查看本地镜像
$ docker images

# 删除镜像
$ docker rmi <image_id>

# 构建镜像
$ docker build -t myapp:v1 .

2. 容器生命周期

bash 复制代码
# 启动容器
$ docker run -d --name web nginx

# 停止/启动容器
$ docker stop web
$ docker start web

# 删除容器
$ docker rm -f web

# 查看运行中容器
$ docker ps

3. 容器操作

bash 复制代码
# 进入容器终端
$ docker exec -it web bash

# 查看容器日志
$ docker logs -f web

# 复制文件
$ docker cp local.txt web:/app

二、高级命令篇

1. 网络管理

bash 复制代码
# 创建自定义网络
$ docker network create mynet

# 连接容器到网络
$ docker network connect mynet web

# 查看端口映射
$ docker port web 80

2. 数据卷操作

bash 复制代码
# 创建持久化卷
$ docker volume create dbdata

# 挂载数据卷
$ docker run -v dbdata:/var/lib/mysql mysql

# 查看卷信息
$ docker volume inspect dbdata

3. Docker Compose

yml 复制代码
# docker-compose.yml示例
version: '3'
services:
  web:
    image: nginx
    ports:
      - "8080:80"
  db:
    image: postgres
    volumes:
      - pgdata:/var/lib/postgresql
volumes:
  pgdata:
bash 复制代码
# 启动服务栈
$ docker-compose up -d

# 查看服务状态
$ docker-compose ps

4. 资源监控

bash 复制代码
# 实时资源监控
$ docker stats

# 检查容器配置
$ docker inspect web

# 查看资源使用详情
$ docker system df

5. 安全加固

bash 复制代码
# 扫描镜像漏洞
$ docker scan nginx

# 设置用户权限
$ docker run -u 1001:1001 nginx

# 只读文件系统
$ docker run --read-only alpine

三、实用技巧
  1. 清理磁盘空间
bash 复制代码
$ docker system prune -a --volumes
  1. 容器健康检查
yml 复制代码
# Dockerfile配置
HEALTHCHECK --interval=30s CMD curl -f http://localhost || exit 1
  1. 多阶段构建优化
Dockerfile 复制代码
FROM golang AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp

FROM alpine
COPY --from=builder /app/myapp .
CMD ["./myapp"]

结语

掌握这些命令可覆盖90%的日常容器操作场景。建议:

  1. 组合使用基础命令完成常规任务
  2. 善用--help参数探索子命令
  3. 重要操作前使用docker diff检查变更

通过实践发现,将常用命令封装为Makefile或Shell脚本可显著提升工作效率。例如自动化部署脚本:

bash 复制代码
#!/bin/bash
docker build -t myapp:$1 .
docker push myrepo/myapp:$1
kubectl set image deployment/myapp myapp=myrepo/myapp:$1
相关推荐
各类产品分享15 分钟前
工业 AR 巡检系统的技术架构与落地实现
架构·ar·ar巡检
江湖有缘33 分钟前
Docker实战 | 使用Docker部署HarborGuard容器安全扫描平台
安全·docker·容器
Dawson Zhu41 分钟前
大模型拒答率与错误率平衡术:五步构建可落地的安全与体验最优解
人工智能·语言模型·架构·aigc·agi
江湖有缘44 分钟前
Docker实战 | 使用Docker部署Reubah文件转换器和图像处理器
docker·容器·eureka
石逸凡1 小时前
金融产品架构演进之一:再谈AI原生架构与AI Inside
金融·架构·ai-native
泡海椒2 小时前
JQuick-SQL 模块架构:从 SQL AST 到分布式执行
分布式·sql·架构
七夜zippoe2 小时前
把 OpenClaw Agent 搬进 K8s:容器化部署全记录
ai·云原生·容器·kubernetes·openclaw
骑着蜗牛撵大象3272 小时前
ToolJet + PostgreSQL:后台表格、查询和流程,一次搭成可远程访问的业务系统
数据库·低代码·docker·postgresql·内部工具·tooljet
智购科技自动售货机工厂2 小时前
省电40%的底层逻辑:冷热双温售货机基于SaaS的智能温控算法~YH
单片机·嵌入式硬件·百度·架构·emacs
Dawson Zhu3 小时前
【AI Infra小白入门④】AI Infra学习路线图:从入门到精通的完整指南(附核心思维方法)
人工智能·语言模型·架构·aigc·agi