gpt4 book ai didi

docker - 在 docker 容器中运行 Composer install

转载 作者:行者123 更新时间:2023-12-02 09:01:26 27 4
gpt4 key购买 nike

我有一个 docker-compose.yml 脚本,如下所示:

version: '2'
services:
php:
build: ./docker/php
volumes:
- .:/var/www/website

位于 ./docker/php 的 DockerFile 如下所示:

FROM php:fpm

RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN php composer-setup.php
RUN php -r "unlink('composer-setup.php');"
RUN mv composer.phar /usr/local/bin/composer
RUN composer update -d /var/www/website

尽管如此,这总是失败并出现错误

[RuntimeException]
Invalid working directory specified, /var/www/website does not exist.

当我删除 RUN Composer 更新行并进入容器时,该目录确实存在并包含我的项目代码。

如果我做错了什么或者我在错误的地方进行 Composer 更新,请告诉我

最佳答案

RUN ... 行在构建镜像时运行。卷附加到容器。您在这里至少有两个选择:

  • 使用COPY命令将您的应用代码复制到图像中,以便该命令之后的所有命令都可以访问它。 (不要将镜像推送到任何公共(public) Docker 存储库,因为它将包含您可能不想泄露的源代码)
  • 使用在容器上运行的命令(Dockerfile 中的 CMDENTRYPOINT 或 docker-compose 中的 command 选项)安装 Composer 依赖项

关于docker - 在 docker 容器中运行 Composer install,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38816691/

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