docker-compose up -d和docker-compose up --build的补充

这篇具有很好参考价值的文章主要介绍了docker-compose up -d和docker-compose up --build的补充。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

命令解释

docker-compose up -d

docker-compose up -d命令用于启动已定义在docker-compose.yml文件中的服务容器,并以守护进程的方式在后台运行。
具体解释如下:

  • docker-compose: 是一个用于定义和运行多个容器应用的工具。
  • up: 用于创建并启动容器。
  • -d--detach: 表示以守护进程的方式运行容器,即在后台运行,不会阻塞终端。
  • docker-compose.yml: 是一个YAML格式的文件,用于定义多个容器的服务配置,包括容器的镜像、端口映射、环境变量、数据卷等。
    当你执行docker-compose up -d命令时,docker-compose会解析docker-compose.yml文件,并根据文件中定义的服务配置创建并启动容器。这些容器会在后台运行,并且你可以继续使用终端进行其他操作,而不会被容器进程阻塞。
    通过docker-compose up -d命令启动的容器会在后台持续运行,直到显式停止或使用docker-compose down命令停止容器。

docker-compose up --build

docker-compose up --build命令用于重新构建并启动服务容器。

具体解释如下:

  • docker-compose: 是一个用于定义和运行多个容器应用的工具。
  • up: 用于创建并启动容器。
  • --build: 表示重新构建容器的镜像。

当你执行docker-compose up --build命令时,docker-compose会解析docker-compose.yml文件,并根据文件中定义的服务配置重新构建容器的镜像。这意味着它会重新执行容器镜像的构建过程,包括下载依赖、安装软件、配置环境等步骤。

  • 重新构建容器的镜像可以确保容器的代码、配置等内容是最新的,以便在启动容器时使用最新的版本。这对于应用程序的更新、配置的更改或者依赖的更新非常有用。

  • 一旦容器镜像重新构建完成,docker-compose会使用新的镜像来创建并启动容器。这些容器会运行在后台,并且你可以继续使用终端进行其他操作,而不会被容器进程阻塞。

  • 需要注意的是,docker-compose up --build命令可能会比较耗时,特别是在首次构建容器或者容器配置发生变化时。因此,建议在需要重新构建容器时使用该命令。如果只是需要启动已经存在的容器,可以使用docker-compose up -d命令以快速启动容器。文章来源地址https://www.toymoban.com/news/detail-607478.html

两种启动方式的区别

  • docker-compose up -d命令用于启动已经存在的服务容器,如果服务容器不存在则会自动创建。-d参数表示以守护进程的方式运行容器。
  • docker-compose up --build命令用于重新构建服务容器。如果服务容器已经存在,该命令会先停止并移除现有的容器,然后重新构建并启动容器。如果服务容器不存在,则会直接构建并启动容器。
  • 总结来说,docker-compose up -d用于启动已经存在的服务容器,而docker-compose up --build用于重新构建并启动服务容器。

速度比较

  • docker-compose up -d命令执行比docker-compose up --build命令快很多。
  • docker-compose up -d命令只是启动已经存在的服务容器,不需要重新构建容器,因此执行速度较快。
  • docker-compose up --build命令需要重新构建服务容器,会执行容器镜像的构建过程,可能会比较耗时,特别是在首次构建容器或者容器配置发生变化时。
  • 因此,如果只是需要启动已经存在的服务容器,可以使用docker-compose up -d命令,以快速启动容器。如果需要重新构建容器,可以使用docker-compose up --build命令。

问题探讨

  1. 如果我停止并删除了正在运行的容器,使用docker-compose up -d部署,那么docker-compose.yml文件及包含的自定义dockercompose文件会重新执行一遍?
    答:
  • 如果你停止并删除了正在运行的容器,然后使用docker-compose up -d命令重新部署,docker-compose.yml文件及其包含的自定义docker-compose文件会重新执行一遍。
  • docker-compose会根据docker-compose.yml文件中定义的服务和容器配置信息,重新创建并启动容器。如果有自定义的docker-compose文件,它也会被加载并执行。
  • 这意味着,如果你对docker-compose.yml文件或自定义docker-compose文件进行了修改,重新部署时会应用这些修改。同时,如果之前的容器已经停止并删除,docker-compose会重新创建这些容器,并根据配置信息重新启动它们。

到了这里,关于docker-compose up -d和docker-compose up --build的补充的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 解决docker-compose up -d 出现Client.Timeout exceeded while awaiting headers的问题(配置docker国内镜像源)

    解决docker-compose up -d 出现Client.Timeout exceeded while awaiting headers的问题(配置docker国内镜像源)

    首先出现的问题是输入 docker-compose up -d 出现如下情况 Pulling tars-mysql (mysql:5.6)... ERROR: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) 或者是可以下载但是速度奇慢,下载几十分钟最后还是失败的情况。 大部分的do

    2024年02月11日
    浏览(7)
  • 【六祎 - Docker】Docker-compose;什么是Docker-compose

    从 2023 年 6 月底开始,Compose V1 将不再受支持,并将从所有 Docker Desktop 版本中删除。 确保使用 docker compose CLI 插件或通过激活 Docker Desktop 中的 Use Docker Compose V2 设置切换到 Compose V2。有关详细信息,请参阅 Compose 的演变。 Compose 是一个用于定义和运行多容器 Docker 应用程序的工

    2023年04月21日
    浏览(27)
  • 【docker】 docker-compose如何更新services镜像 | docker-compose如何更新某个镜像 | docker-compose如何重启某个服务

    更新镜像: 首先,确保你已经获取了最新的镜像版本。这可以通过 docker pull 命令来实现,或者直接使用 docker-compose pull 命令更新所有服务的镜像。 拉取 指定 镜像 - 代码如下: 拉取 所有 镜像 - 代码如下: 注意:在拉取更新的镜像后,docker-compose不会自动重新启动服务。你需要

    2024年02月06日
    浏览(15)
  • 【Docker-compose】基于Docker-compose创建LNMP环境并运行Wordpress网站平台

    【Docker-compose】基于Docker-compose创建LNMP环境并运行Wordpress网站平台

    参见使用Docker构建LNMP环境并运行Wordpress网站平台 Docker-Compose将所管理的容器分为三层,分别是 项目(project)、服务(service)以及容器(container) 。 Docker-Compose运行目录下的所有文件组成一个项目, 若无特殊指定项目名即为当前目录名 。 一个工程当中可包含多个服务,每个

    2024年02月15日
    浏览(8)
  • docker-compose和docker compose的区别

    docker-compose和docker compose的区别

    在docker实际使用中,经常会搭配Compose,用来定义和运行多个 Docker 容器。使用时会发现,有时候的指令是docker-compose,有时候是docker compose,下面给出解释。 docker官方文档:https://docs.docker.com/compose/install/linux/ 官方文档中其实已经给出了答案:Compose分为V1和V2版本,安装方式分

    2024年01月19日
    浏览(7)
  • docker-compose

    Docker-Compose 项目由 Python 编写,调用 Docker 服务提供的 API 来对容器进行管理。因此,只要所操作的平台支持 Docker API,就可以在其上利用 Compose 来进行编排管理 1. Dockerfile 与服务编排  我们知道使用一个 Dockerfile 模板文件可以定义一个单独的应用容器,如果需要定义多个容器

    2024年02月03日
    浏览(6)
  • 【Docker-Compose】

    Dockerfile模板可以定义一个单独的应用容器,若需要定义多个容器就需要服务编排。 Dockerfile可以让用户管理一个单独的应用容器,而compose允许用户在一个模板(YAML格式)中定义一组相关应用容器(被称为一个项目)。 Docker-Compose是Docker官方的开源项目,负责实现对Docker容器

    2024年02月11日
    浏览(11)
  • docker-compose下载

    docker-compose 一般帖子按照方法: curl -L https://github.com/docker/compose/releases/download/2.17.2/docker-compose- uname -s - uname -m -o /usr/local/bin/docker-compose 但是这个下载很难成功 另外使用国内的地址: sudo curl -L https://get.daocloud.io/docker/compose/releases/download/2.17.2/docker-compose- uname -s - uname -m -o /us

    2024年02月17日
    浏览(12)
  • docker-compose安装

    docker-compose安装

    一、安装docker(二进制方式) 1、下载docker二进制包 2、添加执行权限并解压 3、二进制文件放到/usr/bin下:mv docker/* /usr/bin/ 4、创建docker配置文件 5、docker 被systemd管理 6、重新加载配置文件: 7、启动并设为开机自启: 8、查看版本:docker --version 二、安装docker-compose 1、使用g

    2024年02月15日
    浏览(12)
  • docker-compose详讲

    docker-compose详讲

    docker-compose 项目是docker官方的开源项目, 负责实现对docker容器集群的快速编排,来轻松高效的管理容器,定义运行多个容器。 docker-compose将所管理的容器分为三层, 分别是工程(project) , 服务(service) 以及 容器(containner) docker-compose运行目录下的所有文件( docker-comp

    2024年02月10日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包