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 小时前
docker 重命名镜像
docker
羑悻的小杀马特8 小时前
Docker 容器化部署核心实战:从镜像仓库管理、容器多参数运行到 Nginx 服务配置与正反向代理原理解析
nginx·docker·容器·镜像仓库
en-route10 小时前
Kubernetes Ingress:使用 Apache APISIX 进行外部流量路由
容器·kubernetes
DogDaoDao18 小时前
Docker全解析:从核心概念到2025年AI集成新特性
人工智能·docker·eureka·程序员
程序员在线炒粉8元1份顺丰包邮送可乐18 小时前
Docker 部署生产环境可用的 MySQL 主从架构
mysql·docker·架构
m0_7415747519 小时前
k8s的service
云原生·容器·kubernetes
liliangcsdn21 小时前
Mac本地docker安装Kibana+ElasticSearch
elasticsearch·macos·docker
xiao-xiang1 天前
k8s下的发布策略详解
云原生·容器·kubernetes·部署·cicd·发布
优秀的老黄1 天前
Docker部署RabbitMQ
linux·运维·docker·中间件·容器·centos·rabbitmq
Lin_Aries_04211 天前
容器使用卷
linux·运维·docker·云原生·容器·eureka