2025年启动docker-compose命令(启动docker compose)

启动docker-compose命令(启动docker compose)Compose nbsp 是用于定义和运行多容器 nbsp Docker nbsp 应用程序的工具 这篇文章主要给大家介绍了关于 docker compose 常见参数命令的相关资料 中文文档 https yeasy gitbook io docker practice compose docker compose 模板文件 模板文件是使用 Compose 的核心

大家好,我是讯享网,很高兴认识大家。



Compose 是用于定义和运行多容器 Docker 应用程序的工具,这篇文章主要给大家介绍了关于docker-compose常见参数命令的相关资料

中文文档:https://yeasy.gitbook.io/docker_practice/compose

docker-compose模板文件

模板文件是使用 Compose 的核心,涉及到的指令关键字也比较多。下面主要列出几个常见&重要的模板指令,其他指令大家可以自行百度。

默认的模板文件名称为 docker-compose.yml,格式为 YAML 格式

1. environment

设置环境变量,主要是用来配置容器中程序所需要配置的一些参数。你可以使用数组或字典两种格式。

也可以使用数组格式:

2. volumes

数据卷所挂载路径设置,挂载数据卷的默认权限是读写(rw)。

你可以在主机上挂载绝对路径,或者挂载相对路径,相对路径是相对于当前正在使用的compose配置文件的目录进行扩展。 相对路径应始终以 . 或者 … 开始。

你还可以使用别名的方式挂载容器数据卷(可以跨多个服务并重用挂载卷,当然使挂载绝对路径或相对路径也可以重用挂载卷),但要注意一点,使用别名的方式挂载需要在顶级volumes关键字中声明挂在卷,否则启动会报错。

3. build

指定 Dockerfile 所在文件夹的路径(可以是绝对路径,或者相对 docker-compose.yml 文件的路径)。 Compose 将会利用它自动构建这个镜像,然后使用这个镜像。 

你也可以使用 context 指令指定 Dockerfile 所在文件夹的路径,使用 dockerfile 指令指定 Dockerfile 文件名,可以使用 args 指令指定构建镜像时往Dockerfile中传入的变量。

4. depends_on


讯享网

解决容器的依赖、启动先后的问题。以下例子中会先启动 redis db 再启动 web。

注意:web 服务不会等待 redis、db 完全启动之后才启动。

5. env_file

从文件中获取环境变量,可以为单独的文件路径或列表。

环境变量文件中每一行必须符合格式,支持 # 开头的注释行。

6. networks

配置容器连接的网络。

7. ports

暴露端口信息。使用宿主端口:容器端口 (HOST:CONTAINER) 格式。

8. expose

暴露端口,但不映射到宿主机,只被连接的服务访问。

和ports的区别是,expose暴露容器给link到当前容器的容器,不会将端口暴露给主机。

9. restart

指定docker容器(服务)总是运行。

10. 如果需要自定义容器名称,可以使用container_name选项

示例

docker-compose命令

中文文档: https://yeasy.gitbook.io/docker_practice/compose/commands

1. up -d 后台启动

该命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。

默认情况,如果服务容器已经存在,docker-compose up 将会尝试停止容器,然后重新创建(保持使用 volumes-from 挂载的卷),以保证新启动的服务匹配 docker-compose.yml 文件的最新内容。但是不会更新已经打好的镜像,如果镜像错误,不能通过 docker-compose up 更新镜像,只能先删除镜像。如果用户不希望容器被停止并重新创建,可以使用 docker-compose up --no-recreate。这样将只会启动处于停止状态的容器,而忽略已经运行的服务。如果用户只想重新部署某个服务,可以使用 docker-compose up --no-deps -d <SERVICE_NAME> 来重新创建服务并后台停止旧服务,启动新服务,并不会影响到其所依赖的服务。

2. down

此命令将会停止 up 命令所启动的容器,并移除网络,但是不会移除已经打好的镜像。 

3. exec

进入指定的容器。和docker的exec命令一样。

4. ps

列出项目中目前的所有容器。

5. top

查看所有服务容器内运行的进程,或者查看指定服务名的容器内运行的进程。

6. logs -f (实时)

查看所有服务容器,或指定服务容器的日志输出。默认情况下,docker-compose 将对不同的服务输出使用不同的颜色来区分。可以通过 --no-color 来关闭颜色。该命令在调试问题的时候十分有用。

&nbsp;

小讯
上一篇 2025-05-17 07:03
下一篇 2025-06-05 20:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/159248.html