Docker的基础概念及命令

这篇主要介绍一下Docker比较重要的两个概念,镜像和容器,以及操作它们的一些常用命令。

文章目录

一、基础命令

docker -v :查看 Docker 的版本

systemctl start docker:启动docker

systemctl status docker :查看docker服务状态

二、镜像

镜像(Image) :Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。

镜像名称一般分两部分组成:[repository]:[tag]。

在没有指定tag时,默认是latest,代表最新版本的镜像

docker images:该命令用于列出本地主机上的所有 Docker 镜像。它会显示每个镜像的仓库名、标签、镜像 ID 和大小等信息。

docker rmi:该命令用于删除本地主机上的一个或多个 Docker 镜像。需要指定要删除的镜像的镜像 ID 或仓库名和标签。

docker pull [镜像名称]:该命令用于从远程仓库下载或更新一个 Docker 镜像到本地主机。需要指定要拉取的镜像的完整名称,包括仓库名和标签。

docker push:该命令用于将本地主机上的一个 Docker 镜像推送到远程仓库。需要指定要推送的镜像的完整名称,包括仓库名和标签。

docker save:该命令用于将一个或多个 Docker 镜像保存为一个或多个 tar 归档文件。这些归档文件可以用于备份、传输或在其他机器上加载镜像。需要指定要保存的镜像的镜像 ID 或仓库名和标签,以及保存的文件路径。

参数:

:要保存的镜像的名称或 ID。

-o,--output:指定保存的文件路径和文件名。

示例:

复制代码
docker save -o /path/to/save/image.tar image_name

docker load :该命令用于加载一个或多个 Docker 镜像的 tar 归档文件。这些归档文件通常是由 docker save 命令生成的。加载后,镜像可以在本地主机上使用。需要指定要加载的 tar 归档文件的路径。

参数:-i,--input:指定要加载的 tar 归档文件的路径。

示例:

复制代码
docker load -i /path/to/image.tar

三、容器

容器(Container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。镜像运行起来就是容器,一个镜像可以运行多个容器

Docker 容器的命令包括但不限于以下几类:

  1. 生命周期管理命令:

    • docker create:创建一个新的容器但不启动它。
    • docker start [容器ID或容器名称]:启动一个或多个已经存在的容器。
    • docker stop [容器ID或容器名称]:停止一个或多个正在运行的容器。
    • docker restart:重启一个或多个容器。
    • docker pause:暂停一个或多个容器的所有进程。
    • docker unpause:恢复一个或多个容器的所有进程。
    • docker run [选项] [镜像名称] [启动命令]:恢复一个或多个容器的所有进程。
  2. 信息查询命令:

    • docker ps:列出当前正在运行的容器。
    • docker ps -a:列出所有的容器,包括运行中和已停止的。
    • docker inspect:查看容器的详细信息,包括配置、状态、网络等。
    • docker logs:查看容器的日志输出。
  3. 删除和清理命令:

    • docker rm [容器ID或容器名称]:删除一个或多个已经停止的容器。
    • docker kill:强制停止一个或多个运行中的容器。
    • docker container prune:清理掉所有已经停止的容器。
  4. 执行命令:

    • docker exec:在运行中的容器中执行命令。
    • docker attach:连接到正在运行的容器并进入其标准输入/输出流。
  5. 导出和导入命令:

    • docker export:将容器文件系统导出为一个 tar 归档文件。
    • docker import:从 tar 归档文件中创建一个新的文件系统映像。

这些是常见的 Docker 容器管理命令,您可以使用它们来管理和操作 Docker 容器的生命周期、状态和配置等信息。

相关推荐
木雷坞5 小时前
K8s GPU 推理服务 ImagePullBackOff 排查与预热
云原生·容器·kubernetes·gpu算力
萧行之6 小时前
Docker部署Loki+Grafana+Vector实现全服务器日志监控(含N8N/SSH/Fail2ban监控)
服务器·docker·grafana
人工智能培训7 小时前
工程科研中的AI应用:结构力学分析技巧
人工智能·深度学习·机器学习·docker·容器
计算机安禾8 小时前
【Linux从入门到精通】第35篇:容器化技术预备——Docker安装与基本概念
linux·运维·docker
子木HAPPY阳VIP8 小时前
信创UOS,Docker 完整操作部署(Dockerfile部署方式)&排错整合
linux·运维·redis·nginx·docker·容器·tomcat
AOwhisky8 小时前
Kubernetes调度与服务暴露:从“定时任务”到“服务发现”的完全指南
linux·运维·云原生·容器·kubernetes·服务发现
Cyber4K8 小时前
【Kubernetes专项】温故而知新,重温技术原理(6)
云原生·容器·kubernetes
AI服务老曹9 小时前
架构实战:基于 GB28181 与 RTSP 的异构设备统一接入方案,深度解析 Docker 化 AI 视频管理平台
人工智能·docker·架构
叶总没有会9 小时前
Docker:项目部署
运维·docker·容器
爱学习 爱分享9 小时前
docker 本地装瀚高 4.5 数据库
数据库·docker·容器