gpt4 book ai didi

docker - docker-compose up --build 与 docker-compose build && docker-compose up 有区别吗

转载 作者:行者123 更新时间:2023-12-03 17:09:16 25 4
gpt4 key购买 nike

我们试图在远程主机上构建和运行 docker-compose 项目。我尝试使用:

docker-compose -H 'ssh://remote_address' up --build
并得到
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
所以我们尝试:
docker-compose -H 'ssh://remote_address' build
docker-compose -H 'ssh://remote_address' up
哪个工作得很好。我的问题是我在文档中找不到证据证明这是正确的行为。这是 docker-compose 中的错误、功能还是我环境中的错误?

最佳答案

我不确定您在第一个命令中遇到的错误,我的意思是 docker-compose -H 'ssh://ip' up --build因为它可能真的是一个但是,但是提到的三个命令肯定有区别。我会尽量用我简单的方式来解释:

  • 第一个命令是 docker-compose up --build .

  • 此命令查找 docker-compose文件并重建镜像,然后使其运行。假设您对 docker-compose 进行了一些更改。文件,所以当你只运行 docker-compose ,你会收到一个警告,提示图像没有重建,你应该运行 docker-compose up --build重建它并重新构建所有内容(尽管之前已完成并存在于缓存中)。
  • 第二个命令是 docker-compose build .

  • 此命令仅 构建 您的图片基于 docker-compose ,但不是 运行 它。您可以通过 docker image ls 查看构建的图像或 docker images .同时执行 docker ps -a不应该看到您最近构建的镜像正在运行。
  • 第三个也是最后一个命令是 docker-compose up .

  • 如果第一次输入此命令,它会尝试运行 Dockerfile 中的所有内容。如果存在并下载基础镜像等。然后制作镜像并运行容器。
    如果之前已经构建了镜像,它只会运行它。
    与第一个命令不同,第三个命令只运行该镜像的最新构建,但不会再次构建它。

    关于docker - docker-compose up --build 与 docker-compose build && docker-compose up 有区别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66782028/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com