Docker入门之单机常用命令总结

admin 2026-04-16 03:48:01 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文系统总结Docker单机环境常用命令,涵盖镜像管理(pull/push/tag/login)、容器生命周期管理(run/ps/exec/stop/rm)和资源管理(volume/网络/清理)。重点演示了拉取公有私有镜像、配置镜像加速器、数据卷挂载及系统资源清理等实操场景,并附新手速查表。核心价值在于通过场景化分类帮助初学者快速掌握Docker基础运维技能。 综合评分: 75 文章分类: 安全工具,应用安全,云安全,安全运营,其他


cover_image

Docker 入门之单机常用命令总结

原创

一只岸上的鱼 一只岸上的鱼

一只岸上的鱼

2026年4月15日 08:39 江苏

在小说阅读器读本章

去阅读

Docker 入门之单机常用命令总结

缘起

大部分场景,或者说大部分入门使用场景,都是单机环境下使用docker,主要用来隔离环境,节省硬件资源。

所以单机命令也就是最常用的命令了。这篇总结一下单机常用的几组命令。

命令分类

分类的方法是很多的,我采用使用场景来区分:

  1. 镜像管理: 静态数据
  2. 容器管理:动态运行实
  3. 资源管理: 网络与存储

镜像管理

容器镜像主要分俩类:从仓库拉取、将本地镜像推送到仓库

  1. 先来一组拉取镜像的命令
# 拉取最新版Nginxdocker pull nginx
# 拉取指定版本(如1.21.0)docker pull nginx:1.21.0
# 拉取私有仓库镜像docker pull docker.1ms.run/nginx:latest

说明:

A. 第一条命令有2个默认值,这也是docker常用的:

  1. 当不指定仓库名的时候,默认拉取hub.docker.com
  2. 当不支持镜像版本(tag)的时候,默认指得是latest

B. 第二条拉取指定版本镜像

C. 拉取私有仓库的镜像————同时也可能通过镜像(代理)拉取镜像

拉取私有仓库或者通过代理拉取其他仓库(例如中央仓库hub.docker.com)的命令表现形式是一样的。

注: 为什么要代理呢?要镜像呢?因为hub.docker.com大部分时候是连不上的……

如果嫌弃每次都要加上代理的域名,比较麻烦:

# 直接拉取docker pull nginx:latest
# 通过毫秒镜像拉取docker pull docker.1ms.run/nginx:latest

是可以将这个镜像配置到服务中的(docker服务)

配置文件: /etc/docker/daemon.json

{ "registry-mirrors": [ "https://docker.1ms.run" ] }

这时候默认就是从docker.1ms.run拉取了

  1. 推送镜像到仓库

来一组推送命令:

docker push myapp:0.1
docker tag myapp:0.1 docker.cnb.cool/yiqiu/myapp:0.1docker push docker.cnb.cool/yiqiu/myapp:0.1

简单说明:

  1. 第一条命令就是将镜像推送到默认仓库(hub.docker.com)
  2. 将镜像推送到私库

注意,推送到指定仓库,是无法单独指定仓库名称的,唯一的方法就是将镜像重命名,将仓库名称带入到镜像的名称中:重新tag,这就是第二条指令的作用,类似于ln -s吧

辅助命令: 推送仓库、或者从私有仓库拉取,都是要登录的,要有权限控制的,下面是登录命令,执行后会提示输入密码:

# 使用用户名yiqiu登录docker.cnb.cool仓库docker login -u yiqiu docker.cnb.cool

如果你对自己搭建docker仓库和代理感兴趣,推荐:

使用nexus3搭建自己的制品服务器

容器管理

容器就是动态的概念了,就是运行中的镜像,内存中的,容器管理的就是容器的生命周期:

容器的创建、查看、监控、进入容器内部、停止、删除:

# 启动一个镜像docker run -d -p 8080:80 --name mynginx nginx
# 查看当前宿主机运行中的镜像docker ps docker ps -a #当前宿主机中的镜像,包含一键停止的
# 查看当前宿主机运行中的镜像的资源占用docker stats
# 进入docker 内部的环境中docker exec -it mynginx bash
# 停止镜像、启动镜像、重启镜像docker stop mynginxdocker start mynginxdocker restart mynginx
# 删除镜像docker rm mynginx

这些命令的实操:

日志的查看:

# 查看my-nginx的完整日志docker logs mynginx
# 实时跟踪日志docker logs -f mynginx
# 查看最后100行日志docker logs --tail 100 mynginx

资源管理

docker 的资源,必须手工管理的,只有硬盘(文件夹)和网络(端口),其他资源(cpu、内存)都可以默认系统管理的。

网络资源已经写了两篇文章说明了,这里就不多说了,关于硬盘(文件夹)作用:将数据独立于运行中的容器,以确保当容器生命周期结束的时候,数据能保存下来

有俩方式:

  1. 使用docker volume 创建数据卷

由docker引擎管理,可以使用本地硬盘、NFS、NAS等

常用命令:

# 创建数据卷docker volume create myvol
# 查看docker volume ls
# 删除docker volume rm myvol# 清理所有未用、匿名的数据卷docker volume prune

实验结果:

  1. 使用-v参数直接映射本地文件夹

只能使用本地文件系统,但是可以宿主机可读

# mkdir ./datadocker run -it --rm -v ./data:/data alpine sh

实验结果:

清理资源

# 基础清理docker system prune
# 清理所有未使用的镜像(包括未打标签的)docker system prune -a
# 清理所有未使用的镜像、容器、网络和数据卷(慎用!)docker system prune -a --volumes

小结

常用命令表格:


速查表:新手必备,收藏备用!

| 功能 | 核心命令 | 用例 | | — | — | — | | 拉取镜像 | docker pull <镜像> | docker pull nginx | | 查看镜像 | docker images | docker images | | 启动容器 | docker run -d -p 80:80 --name <name> <image> | docker run -d -p 8080:80 --name my-nginx nginx | | 查看容器 | docker ps -a | docker ps -a | | 进入容器 | docker exec -it <name> /bin/bash | docker exec -it my-nginx /bin/bash | | 查看日志 | docker logs -f <name> | docker logs -f my-nginx | | 停止容器 | docker stop <name> | docker stop my-nginx | | 删除容器 | docker rm <name> | docker rm my-nginx | | 清理环境 | docker system prune -a | docker system prune -a |


本系列其他

  1. Docker 入门之基本概念
  2. Docker 入门之网络基础
  3. Docker 入门之overlay网络
  4. docker入门之单进程哲学与多进程管理

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:一只岸上的鱼 一只岸上的鱼 一只岸上的鱼《Docker 入门之单机常用命令总结》

超高价招募HW简历 网络安全文章

超高价招募HW简历

文章总结: 本文档为2025年护网行动(HVV)招募宣传,针对红队渗透手、蓝队防御工程师等安全人员,核心卖点为国家级攻防实战背书与日薪800-3000元的高收益
评论:0   参与:  0