docker常用指令

当然可以!Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包到一个轻量级、可移植的容器中。以下是一些 Docker 的常用命令及其简要说明,适合初学者参考:

1. Docker 镜像相关命令

a. 拉取镜像

从 Docker 仓库拉取一个镜像。

bash 复制代码
docker pull [OPTIONS] NAME[:TAG|@DIGEST]

示例:

bash 复制代码
docker pull ubuntu:20.04

这将从 Docker Hub 拉取 Ubuntu 20.04 版本的镜像。

b. 列出本地镜像

查看本地存储的 Docker 镜像。

bash 复制代码
docker images [OPTIONS] [REPOSITORY[:TAG]]

示例:

bash 复制代码
docker images

这将列出所有本地镜像及其详细信息。

c. 删除镜像

删除一个或多个本地镜像。

bash 复制代码
docker rmi [OPTIONS] IMAGE [IMAGE...]

示例:

bash 复制代码
docker rmi ubuntu:20.04

这将删除 Ubuntu 20.04 版本的镜像。

d. 构建镜像

根据 Dockerfile 构建一个新的镜像。

bash 复制代码
docker build [OPTIONS] PATH | URL | -

示例:

bash 复制代码
docker build -t my-app:1.0 .

这将在当前目录下的 Dockerfile 构建一个名为 my-app、标签为 1.0 的镜像。

2. Docker 容器相关命令

a. 运行容器

创建一个新的容器并运行一个命令。

bash 复制代码
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

示例:

bash 复制代码
docker run -it --name my-ubuntu ubuntu:20.04 /bin/bash

这将启动一个交互式的 Ubuntu 容器,并进入 bash shell。

b. 列出正在运行的容器

查看当前正在运行的容器。

bash 复制代码
docker ps [OPTIONS]

示例:

bash 复制代码
docker ps

这将列出所有正在运行的容器。

c. 列出所有容器

查看所有容器,包括停止运行的。

bash 复制代码
docker ps -a [OPTIONS]

示例:

bash 复制代码
docker ps -a

这将列出所有容器,包括停止运行的。

d. 停止容器

停止一个或多个运行中的容器。

bash 复制代码
docker stop [OPTIONS] CONTAINER [CONTAINER...]

示例:

bash 复制代码
docker stop my-ubuntu

这将停止名为 my-ubuntu 的容器。

e. 启动容器

启动一个已经停止的容器。

bash 复制代码
docker start [OPTIONS] CONTAINER [CONTAINER...]

示例:

bash 复制代码
docker start my-ubuntu

这将启动名为 my-ubuntu 的容器。

f. 删除容器

删除一个或多个容器。

bash 复制代码
docker rm [OPTIONS] CONTAINER [CONTAINER...]

示例:

bash 复制代码
docker rm my-ubuntu

这将删除名为 my-ubuntu 的容器。

g. 查看容器日志

查看容器的日志输出。

bash 复制代码
docker logs [OPTIONS] CONTAINER

示例:

bash 复制代码
docker logs my-ubuntu

这将显示 my-ubuntu 容器的日志。

h. 进入容器

进入一个正在运行的容器。

bash 复制代码
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

示例:

bash 复制代码
docker exec -it my-ubuntu /bin/bash

这将进入名为 my-ubuntu 的容器的 bash shell。

3. Docker 网络相关命令

a. 创建网络

创建一个新的 Docker 网络。

bash 复制代码
docker network create [OPTIONS] NETWORK

示例:

bash 复制代码
docker network create my-network

这将创建一个名为 my-network 的网络。

b. 列出网络

查看所有 Docker 网络。

bash 复制代码
docker network ls [OPTIONS]

示例:

bash 复制代码
docker network ls

这将列出所有 Docker 网络。

c. 删除网络

删除一个或多个 Docker 网络。

bash 复制代码
docker network rm [OPTIONS] NETWORK [NETWORK...]

示例:

bash 复制代码
docker network rm my-network

这将删除名为 my-network 的网络。

4. Docker 数据卷相关命令

a. 创建数据卷

创建一个新的数据卷。

bash 复制代码
docker volume create [OPTIONS] [VOLUME]

示例:

bash 复制代码
docker volume create my-volume

这将创建一个名为 my-volume 的数据卷。

b. 列出数据卷

查看所有 Docker 数据卷。

bash 复制代码
docker volume ls [OPTIONS]

示例:

bash 复制代码
docker volume ls

这将列出所有 Docker 数据卷。

c. 删除数据卷

删除一个或多个数据卷。

bash 复制代码
docker volume rm [OPTIONS] VOLUME [VOLUME...]

示例:

bash 复制代码
docker volume rm my-volume

这将删除名为 my-volume 的数据卷。

5. Docker Compose 相关命令

Docker Compose 是用于定义和运行多容器 Docker 应用程序的工具。

a. 启动服务

启动所有在 docker-compose.yml 中定义的服务。

bash 复制代码
docker-compose up [OPTIONS]

示例:

bash 复制代码
docker-compose up -d

这将以分离模式启动所有服务。

b. 停止服务

停止所有在 docker-compose.yml 中定义的服务。

bash 复制代码
docker-compose down [OPTIONS]

示例:

bash 复制代码
docker-compose down

这将停止并移除所有服务。

c. 查看服务日志

查看服务的日志输出。

bash 复制代码
docker-compose logs [OPTIONS] [SERVICE...]

示例:

bash 复制代码
docker-compose logs -f

这将显示所有服务的实时日志。

6. 其他常用命令

a. 查看 Docker 版本

查看 Docker 的版本信息。

bash 复制代码
docker version [OPTIONS]

示例:

bash 复制代码
docker version
b. 查看 Docker 信息

查看 Docker 的系统范围的信息。

bash 复制代码
docker info [OPTIONS]

示例:

bash 复制代码
docker info
c. 清理未使用的资源

清理未使用的容器、网络、镜像和数据卷。

bash 复制代码
docker system prune [OPTIONS]

示例:

bash 复制代码
docker system prune -a

这将删除所有未使用的容器、网络、镜像和数据卷。

总结

以上是一些 Docker 的常用命令及其简要说明。随着您对 Docker 的深入了解,您会发现更多高级功能和命令。推荐您查阅 Docker 官方文档 以获取更详细的信息和教程。

相关推荐
JY.yuyu3 分钟前
Docker常用命令——数据卷管理 / 端口映射 / 容器互联
运维·docker·容器
lpruoyu44 分钟前
【Docker进阶-06】docker-compose & docker swarm
运维·docker·容器
China_Yanhy1 小时前
入职 Web3 运维日记 · 第 8 日:黑暗森林 —— 对抗 MEV 机器人的“三明治攻击”
运维·机器人·web3
艾莉丝努力练剑1 小时前
hixl vs NCCL:昇腾生态通信库的独特优势分析
运维·c++·人工智能·cann
酉鬼女又兒2 小时前
每天一个Linux命令_printf
linux·运维·服务器
虾说羊2 小时前
docker容器化部署项目流程
运维·docker·容器
Trouvaille ~2 小时前
TCP Socket编程实战(三):线程池优化与TCP编程最佳实践
linux·运维·服务器·网络·c++·网络协议·tcp/ip
大大大反派2 小时前
CANN 生态中的自动化部署引擎:深入 `mindx-sdk` 项目构建端到端 AI 应用
运维·人工智能·自动化
WHD3062 小时前
苏州勒索病毒加密 服务器数据解密恢复
运维·服务器
骇客野人3 小时前
通过脚本推送Docker镜像
java·docker·容器