Docker 命令总结:从入门到入土

前言

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。下面是一些常用的 Docker 命令总结

Docker 安装与服务管理

在开始使用 Docker 之前,确保 Docker 已经安装在您的系统上。安装完成后,您可以使用以下命令来管理 Docker 服务:

  • 启动 Docker 服务 :

    bash 复制代码
    systemctl start docker
  • 重启 Docker 服务 :

    bash 复制代码
    systemctl restart docker
  • 停止 Docker 服务 :

    bash 复制代码
    systemctl stop docker
  • 查看 Docker 服务状态 :

    bash 复制代码
    systemctl status docker
  • 设置 Docker 开机启动 :

    bash 复制代码
    systemctl enable docker

Docker 镜像管理

镜像是 Docker 的核心概念之一,它是用来创建 Docker 容器的基础。您可以使用以下命令来管理 Docker 镜像:

  • 列出所有镜像 :

    bash 复制代码
    docker images
  • 删除特定镜像 :

    bash 复制代码
    docker rmi 镜像ID
  • 搜索 Docker Hub 上的镜像 :

    bash 复制代码
    docker search 关键词
  • 从 Docker Hub 下载镜像 :

    bash 复制代码
    docker pull 镜像名[:标签]
  • 导出镜像到 tar 文件 :

    bash 复制代码
    docker save -o [目标文件名] [镜像名]
  • 从 tar 文件导入镜像 :

    bash 复制代码
    docker load -i 镜像文件

Docker 容器操作

容器是镜像的一个运行实例,您可以启动、停止、移动或删除它们。以下是几个常用的容器操作命令:

  • 列出所有正在运行的容器 :

    bash 复制代码
    docker ps
  • 列出所有容器(包括已停止的) :

    bash 复制代码
    docker ps -a
  • 创建并启动一个容器 :

    bash 复制代码
    docker run -id --name=容器名 镜像名
  • 进入一个正在运行的容器 :

    bash 复制代码
    docker exec -it 容器名 bash
  • 查看容器详细信息 :

    bash 复制代码
    docker inspect 容器名或容器ID
  • 查看容器日志 :

    bash 复制代码
    docker logs -f 容器名
  • 停止容器 :

    bash 复制代码
    docker stop 容器名
  • 启动已停止的容器 :

    bash 复制代码
    docker start 容器名
  • 删除容器 :

    bash 复制代码
    docker rm -f 容器名

Docker 数据卷管理

数据卷是在一个或多个容器间共享和持久化的存储区域。数据卷独立于容器的生命周期,因此即使容器被删除,数据卷中的数据仍然存在。

  • 创建数据卷 :

    bash 复制代码
    docker volume create 卷名
  • 列出所有数据卷 :

    bash 复制代码
    docker volume ls
  • 查看数据卷详细信息 :

    bash 复制代码
    docker volume inspect 卷名
  • 删除数据卷 :

    bash 复制代码
    docker volume rm 卷名
  • 删除所有未使用的数据卷 :

    bash 复制代码
    docker volume prune

Dockerfile 和 Docker Compose

Dockerfile

Dockerfile 是一个文本文件,其中包含了一系列命令,用户可以调用 docker build 命令来创建一个新的镜像。下面是一个简单的 Dockerfile 示例:

Dockerfile 复制代码
FROM java:8-alpine
COPY ./docker-demo.jar /tmp/app.jar
EXPOSE 8090
ENTRYPOINT ["java", "-jar", "/tmp/app.jar"]
  • 基于 Dockerfile 构建镜像 :

    bash 复制代码
    docker build -t 镜像名:标签 .

Docker Compose

Docker Compose 允许您使用 YAML 文件定义和运行多容器 Docker 应用程序。使用单个 docker-compose.yml 文件来配置应用程序的服务。然后,使用一个命令就可以创建和启动所有服务。

  • 启动 Docker Compose 项目 :

    bash 复制代码
    docker-compose up -d
  • 查看 Docker Compose 日志 :

    bash 复制代码
    docker-compose logs -f 服务名
  • 重启 Docker Compose 服务 :

    bash 复制代码
    docker-compose restart 服务名

私有仓库操作

如果您需要在私有仓库中管理镜像,可以使用以下命令:

  • 给本地镜像打标签 :

    bash 复制代码
    docker tag 镜像名:标签 私有仓库地址/镜像名:标签
  • 推送到私有仓库 :

    bash 复制代码
    docker push 私有仓库地址/镜像名:标签
  • 从私有仓库拉取镜像 :

    bash 复制代码
    docker pull 私有仓库地址/镜像名:标签

教程文档PDF版(蓝奏云下载地址)直接下载永久保存,不限速,方便随时查阅

资源预览:

相关推荐
探索云原生9 小时前
终于搞懂 Kueue:5 个核心对象一次讲透
linux·docker·ai·云原生·kubernetes
AI服务老曹10 小时前
Docker部署AI视频分析平台参数配置说明与调优指南
人工智能·docker·音视频
eggcode11 小时前
docker拉取、重命名、导出导入、删除镜像的示例
docker
蜀道山老天师12 小时前
从零读懂 K8s:核心概念、集群架构与工作原理
容器·架构·kubernetes
静待雨落14 小时前
Docker 高频命令
docker·容器
Java小白笔记14 小时前
Docker 命令大全:从入门到精通的完整指令集
spring cloud·docker
Java面试题总结14 小时前
Vibe Coding最重要的是Spec
docker
OsDepK15 小时前
Windows快速部署Docker
运维·docker·容器
不能只会打代码16 小时前
校享云 — 高校智慧后勤平台微服务架构设计与实践
spring cloud·docker·微服务·nacos·vue·校享云
前端Baymax18 小时前
kube-proxy iptables模式下NodePort间歇性超时
docker·容器·kubernetes