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版(蓝奏云下载地址)直接下载永久保存,不限速,方便随时查阅

资源预览:

相关推荐
明 庭2 小时前
Ubuntu下通过Docker部署NGINX服务器
服务器·ubuntu·docker
dessler4 小时前
Docker-run命令详细讲解
linux·运维·后端·docker
aherhuo5 小时前
kubevirt网络
linux·云原生·容器·kubernetes
陌北v15 小时前
Docker Compose 配置指南
运维·docker·容器·docker-compose
catoop5 小时前
K8s 无头服务(Headless Service)
云原生·容器·kubernetes
阿里嘎多学长6 小时前
docker怎么部署高斯数据库
运维·数据库·docker·容器
明 庭6 小时前
Ubuntu下通过Docker部署Caddy服务器
服务器·ubuntu·docker
G_whang7 小时前
windos 安装docker
运维·docker·容器
Mitch3117 小时前
【漏洞复现】CVE-2021-45788 SQL Injection
sql·web安全·docker·prometheus·metersphere
运维小文7 小时前
K8S中的PV、PVC介绍和使用
docker·云原生·容器·kubernetes·存储