Docker 常用命令详解

Docker 是一个开源的容器化平台,它允许开发者自动化地部署应用程序。它通过将应用程序及其依赖项打包到一个可移植的容器中来实现这一点。本文将详细介绍一些常用的 Docker 命令,帮助您更好地使用 Docker。

1. Docker 安装

在使用 Docker 之前,您需要先安装 Docker。具体的安装步骤可以参考 Docker 官方文档,这里不再赘述。

2. Docker 基本命令

2.1. 查看 Docker 版本

docker --version

2.2. 查看 Docker 信息

docker info

3. 镜像相关命令

3.1. 搜索镜像

docker search <image_name>

示例:

docker search nginx

3.2. 拉取镜像

docker pull <image_name>

示例:

docker pull nginx

3.3. 列出本地镜像

docker images

3.4. 删除镜像

docker rmi <image_id>

示例:

docker rmi a9d583973e

4. 容器相关命令

4.1. 创建并启动容器

docker run -it <image_name> /bin/bash

示例:

docker run -it ubuntu /bin/bash

4.2. 列出运行中的容器

docker ps

4.3. 列出所有容器(包括已停止的)

docker ps -a

4.4. 停止容器

docker stop <container_id>

示例:

docker stop c3a1f397a19a

4.5. 删除容器

docker rm <container_id>

示例:

docker rm c3a1f397a19a

4.6. 启动已停止的容器

docker start <container_id>

示例:

docker start c3a1f397a19a

4.7. 重启容器

docker restart <container_id>

示例:

docker restart c3a1f397a19a

4.8. 进入运行中的容器

docker exec -it <container_id> /bin/bash

示例:

docker exec -it c3a1f397a19a /bin/bash

5. Docker 容器与数据卷

5.1. 创建数据卷

docker volume create <volume_name>

示例:

docker volume create my_volume

5.2. 挂载数据卷

docker run -it -v <volume_name>:/<path_in_container> <image_name>

示例:

docker run -it -v my_volume:/data ubuntu

5.3. 查看所有数据卷

docker volume ls

5.4. 删除数据卷

docker volume rm <volume_name>

示例:

docker volume rm my_volume

6. Docker 网络

6.1. 查看所有网络

docker network ls

6.2. 创建自定义网络

docker network create <network_name>

示例:

docker network create my_network

6.3. 将容器连接到网络

docker network connect <network_name> <container_id>

示例:

docker network connect my_network c3a1f397a19a

6.4. 从网络断开容器

docker network disconnect <network_name> <container_id>

示例:

docker network disconnect my_network c3a1f397a19a

7. Docker Compose

Docker Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过一个配置文件,您可以描述多个容器的配置,然后使用一个命令来启动和运行这些容器。

7.1. 启动服务

docker-compose up

7.2. 在后台启动服务

docker-compose up -d

7.3. 停止服务

docker-compose down

总结

以上就是常用的 Docker 命令详解。这些命令覆盖了从镜像管理、容器操作到数据卷和网络配置等方面的内容。熟练掌握这些命令,可以帮助您更高效地使用 Docker 进行开发和部署工作。

相关推荐
镜子AI7 小时前
镜子AI 技术复盘:三条自动化链路上的“停止条件“设计
运维·人工智能·自动化
tianyuanwo7 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
螺蛳粉 螺蛳粉8 小时前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
知已难寻9 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
huainingning10 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
say_fall10 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii11 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器
相思难忘成疾11 小时前
从零搭建 Kubernetes 1.30 集群:kubeadm 部署一主多从实战(RHEL 9.3 + Docker + flannel)
linux·运维·kubernetes
PellyKoo11 小时前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
时早玖沐11 小时前
放弃 QQ 官方机器人:用 SnowLuma + AstrBot 自建 QQ 机器人
docker·开源·agent