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 进行开发和部署工作。

相关推荐
舞动CPU4 小时前
linux c/c++最高效的计时方法
linux·运维·服务器
皮锤打乌龟4 小时前
(干货)Jenkins使用kubernetes插件连接k8s的认证方式
运维·kubernetes·jenkins
钰@5 小时前
小程序开发者工具的network选项卡中有某域名的接口请求,但是在charles中抓不到该接口
运维·服务器·小程序
wanhengwangluo5 小时前
云服务器和物理服务器的区别有哪些?
运维·服务器
南猿北者5 小时前
docker Network(网络)
网络·docker·容器
秦jh_6 小时前
【Linux】多线程(概念,控制)
linux·运维·前端
yaosheng_VALVE6 小时前
稀硫酸介质中 V 型球阀的材质选择与选型要点-耀圣
运维·spring cloud·自动化·intellij-idea·材质·1024程序员节
sam-1236 小时前
k8s上部署redis高可用集群
redis·docker·k8s
看山还是山,看水还是。7 小时前
Redis 配置
运维·数据库·redis·安全·缓存·测试覆盖率
扣得君7 小时前
C++20 Coroutine Echo Server
运维·服务器·c++20