当前位置: 首页 > ds >正文

Docker常用命令详解:以Nginx为例

Docker常用命令详解:以Nginx为例

表格有参照:
菜鸟教程-Docker 命令大全
菜鸟教程-Docker 容器使用
文章有AI参与修改创作。

命令描述示例
镜像管理镜像名称使用:<IMAGE_NAME>,容器名称使用:<CONTAINER_NAME>,主机路径路径:<MAIN_MACHINE_PATH>,
docker build使用 Dockerfile 构建镜像docker build -t <IMAGE_NAME> .
docker commit从容器创建一个新镜像docker commit <CONTAINER_NAME> <IMAGE_NAME>
docker pull从 Docker 仓库拉取镜像docker pull <IMAGE_NAME>
docker push将镜像推送到 Docker 仓库docker push <IMAGE_NAME>
docker load从 tar 归档文件加载镜像docker load -i <MAIN_MACHINE_PATH>/<IMAGE_NAME>.tar
docker save将镜像保存为 tar 归档文件docker save -o <MAIN_MACHINE_PATH>/<NEW_IMAGE_NAME>.tar <IMAGE_NAME>
docker images列出本地存储的所有镜像docker images
docker rmi删除一个或多个镜像docker rmi <IMAGE_NAME>
容器生命周期管理
docker create创建一个新容器但不启动它docker create --name <CONTAINER_NAME> <IMAGE_NAME>
docker run启动一个新的容器并运行命令docker run -d --name <CONTAINER_NAME> <IMAGE_NAME>
docker start启动已停止的容器docker start <CONTAINER_NAME>
docker stop停止一个或多个容器docker stop <CONTAINER_NAME>
docker restart重启一个容器docker restart <CONTAINER_NAME>
docker kill强制停止一个或多个容器docker kill <CONTAINER_NAME>
docker pause暂停容器中的所有进程docker pause <CONTAINER_NAME>
docker unpause恢复容器中暂停的进程docker unpause <CONTAINER_NAME>
docker rm删除一个或多个容器docker rm <CONTAINER_NAME>
docker rename重命名容器docker rename <OLD_NAME> <NEW_NAME>
容器信息查看
docker ps列出当前正在运行的容器docker ps
docker ps -a列出所有容器(包括已停止的容器)docker ps -a
docker logs查看容器的日志docker logs <CONTAINER_NAME>
docker inspect获取容器或镜像的详细信息docker inspect <CONTAINER_NAME>
docker stats显示容器的实时资源使用情况docker stats <CONTAINER_NAME>
容器交互操作
docker exec在运行的容器中执行命令docker exec <CONTAINER_NAME> ls
docker exec -it进入容器的交互式终端docker exec -it <CONTAINER_NAME> /bin/bash
docker cp在容器和本地文件系统之间复制文件docker cp <CONTAINER_NAME>:<CONTAINER_PATH> <MAIN_MACHINE_PATH>
docker export将容器文件系统导出为 tar 归档文件docker export -o <MAIN_MACHINE_PATH>/container.tar <CONTAINER_NAME>
网络和存储管理
docker network ls列出所有 Docker 网络docker network ls
docker volume ls列出所有 Docker 卷docker volume ls
Docker Compose
docker-compose up启动多容器应用docker-compose up
docker-compose down停止并删除 compose 启动的资源docker-compose down
仓库认证
docker login登录 Docker 仓库(支持安全密码输入)echo "<PASSWORD>" | docker login <REGISTRY_URL> --username <USERNAME> --password-stdin
docker logout登出 Docker 仓库docker logout <REGISTRY_URL>
系统信息
docker info显示 Docker 系统信息docker info
docker version显示版本信息docker version

1. 获取镜像

docker pull nginx:latest  # 下载最新版Nginx镜像
docker pull nginx         # 不指明版本则默认是最新版本
docker images             # 查看本地所有镜像

2. 启动容器

# 启动Nginx容器(后台运行,映射80端口)
docker run -d --name my-nginx -p 8080:80 nginx
# 查看运行中的容器
docker ps

添加映射

映射内容参阅:https://blog.csdn.net/GoodCooking/article/details/149670197

只替换主配置文件 + 自定义网页内容。
docker run -d --name my-nginx \-p 8080:80 \-v D:/dockerFils/nginx/nginx_mainConf:/etc/nginx/nginx.conf \-v D:/dockerFils/nginx/nginx_html:/usr/share/nginx/html \nginx
映射 default.conf(站点配置) + html(网页文件)
docker run -d --name my-nginx \-p 8080:80 \-v D:/dockerFils/nginx/nginx_defaultConf:/etc/nginx/conf.d/default.conf \-v D:/dockerFils/nginx/nginx_html:/usr/share/nginx/html \nginx
映射 nginx.conf + default.conf + html
docker run -d --name my-nginx \-p 8080:80 \-v D:/dockerFils/nginx/nginx_mainConf:/etc/nginx/nginx.conf \-v D:/dockerFils/nginx/nginx_defaultConf:/etc/nginx/conf.d/default.conf \-v D:/dockerFils/nginx/nginx_html:/usr/share/nginx/html \nginx

3. 容器管理

docker stop my-nginx      # 停止容器
docker start my-nginx     # 启动已停止的容器
docker restart my-nginx   # 重启容器
docker exec -it my-nginx bash  # 进入容器终端(调试用)

4. 日志与监控

docker logs my-nginx          # 查看日志
docker stats my-nginx         # 实时资源监控(CPU/内存)
docker inspect my-nginx       # 查看容器详细配置

5. 持久化与网络

# 挂载本地目录到Nginx网页目录
docker run -d -v ./html:/usr/share/nginx/html -p 8080:80 nginx# 查看网络和卷
docker network ls
docker volume ls

6. 清理资源

docker rm my-nginx       # 删除容器
docker rmi nginx:latest  # 删除镜像
docker system prune      # 清理所有无用资源(谨慎使用)

7. Docker Compose示例

创建 docker-compose.yml 文件:

version: '3'
services:web:image: nginxports:- "8080:80"volumes:- ./html:/usr/share/nginx/html

启动服务:

docker-compose up -d    # 后台启动
docker-compose down     # 停止并删除

8. 其他实用命令

docker version     # 查看Docker版本
docker login       # 登录镜像仓库(如Docker Hub)
docker push yourname/nginx-custom  # 推送自定义镜像
http://www.xdnf.cn/news/16470.html

相关文章:

  • 台式电脑有多个风扇开机只有部分转动的原因
  • 典型的 Vue 3 项目目录结构详解
  • 解决使用vscode连接服务器出现“正在下载 VS Code 服务器...”
  • 动态SQL标签
  • FROM stakater/java8-alpine 构建cocker镜像
  • 学习嵌入式的第三十三天-数据结构-(2025.7.25)服务器/多客户端模型
  • SSRF_XXE_RCE_反序列化学习
  • ChatIm项目文件上传与获取
  • 前缀和-238-除自身以外数组的乘积-力扣(LeetCode)
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——6. 传统算法实战:用OpenCV测量螺丝尺寸
  • nginx一个域名下部署多套前端项目
  • GRE、MGRE实验
  • RK3568笔记九十三:基于RKNN Lite的YOLOv5目标检测
  • FreeMarker模板引擎
  • 【C++】C++11特性的介绍和使用(第三篇)
  • 【RHCSA 问答题】第 10 章 配置和保护 SSH
  • 航空发动机高速旋转件的非接触式信号传输系统
  • 技术赋能与营销创新:开源链动2+1模式AI智能名片S2B2C商城小程序的流量转化路径研究
  • 工具 | 解决 VSCode 中的 Delete CR 问题
  • 小程序的客服咨询(与企业微信建立沟通)
  • (React入门上手——指北指南学习(第一节)
  • LeetCode——1957. 删除字符使字符串变好
  • 力扣---------238. 除自身以外数组的乘积
  • Ruby 数据库访问 - DBI 教程
  • Android-广播详解
  • Go-Elasticsearch v9 安装与版本兼容性
  • Flask input 和datalist结合
  • 图论:Dijkstra算法
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现沙滩小人检测识别(C#代码UI界面版)
  • 【机器学习深度学习】LLamaFactory微调效果与vllm部署效果不一致如何解决