当前位置: 首页 > 知识库问答 >
问题:

生成映像后Docker未安装composer依赖项

许彦
2023-03-14

cp/var/ww/html/config.inc.php.dist/var/ww/html/config.inc.php

未安装。

DockerFile:

FROM php:5.6-fpm
LABEL maintainer "karolis@pretendentas.lt"

WORKDIR /var/www/html

VOLUME /var/www/html
EXPOSE 9000

COPY docker-entrypoint.sh /docker-entrypoint.sh

RUN set -ex \
    && apt-get update && apt-get install -y \
        zip \
        git \
        libxml2-dev \
        libjpeg-dev \
        libpng12-dev \
    && docker-php-ext-configure gd --with-png-dir=/usr/ --with-jpeg-dir=/usr/ \
    && docker-php-ext-install -j$(nproc) bcmath gd mysqli opcache soap

RUN mkdir -p /var/lib/php/session \
    && mkdir -p /var/lib/php/wsdlcache \
    && chown -R www-data:www-data /var/lib/php/session \
    && chown -R www-data:www-data /var/lib/php/wsdlcache \
    && chmod +x /docker-entrypoint.sh

ENV GITHUB_TOKEN ********************

RUN set -ex \
    && curl -sS https://getcomposer.org/installer | php -- \
        --install-dir=/usr/bin \
        --filename=composer \
    && composer config -g github-oauth.github.com $GITHUB_TOKEN

ENTRYPOINT ["/docker-entrypoint.sh"]
#!/bin/bash
set -e

if [ -f var/www/html/docker/init.sh ]; then
    sleep 5 && echo "[info] Running /var/www/html/init.sh script" && sh /var/www/html/init.sh &
fi

docker-php-entrypoint php-fpm
#!/bin/bash

if [ -f /var/www/html/composer.json ] && [ ! -d /var/www/html/vendor ]; then
   echo "[info] Composer install"
   composer install --working-dir=/var/www/html $COMPOSER_ARGS
fi


if [ ! -f /var/www/html/config.inc.php ]; then
    echo "[info] Copy default config"
    cp /var/www/html/config.inc.php.dist /var/www/html/config.inc.php
fi
php:
    image: pretendentas/php5.6-test
    ports:
      - "9000:9000"
    volumes:
      - .:/var/www/html
      - ./docker/php/php.ini:/usr/local/etc/php/php.ini:ro
    working_dir: /var/www/html
    restart: always
    depends_on:
      - db

共有1个答案

有翰海
2023-03-14

我想你在执行文件的过程中选择了错误的路径。

DockerFile

COPY init.sh /var/www/html/init.sh

EntryPoint.sh

if [ -f var/wwww/html/docker/init.sh ];
 类似资料:
  • 我已经创建了作曲家包,composer.json是 现在,当我安装 包,我需要那个作曲家安装所有需要的包: 但它没有安装它。 我尝试作曲家更新,作曲家安装。有人能帮忙吗? C项目omposer.json看起来像 我能做的是,作曲家自动安装所有软件包所需的依赖项????谢谢你的建议。

  • 首先,有一些相关的帖子并不真正适合我的问题。 Composer不会安装依赖项 还有一些。 我有一个Symfony项目,其中包含一些私人包。这些是风投公司参考的: 这和预期的一样。但是,私有包yyy引用了另一个私有包(我们称之为sub-yyy),它也由package composer.json文件中的类型vcs引用。 如果我运行作曲家安装失败与消息: 问题1-yyyy的安装请求- 潜在原因: 包名中

  • 我正在尝试在我的电脑上运行laravel,但是我很难在我的机器上安装这个资源,下面是linux终端的一点错误 无法创建文件 /var/www/html/composer.phar:fopen(/var/www/html/composer.phar):打开流失败:权限被拒绝下载失败:fopen(/var/www/html/composer.phar):未能打开流:权限被拒绝f写()期望参数1是资源,

  • 注意:我不再使用这个环境,所以我没有办法测试答案并接受答案。对不起. 您能给我指出一个使用composer处理PHP依赖关系的docker映像的例子吗? 我正在使用docker php映像构建一个docker映像,我需要做的是安装composer并在映像创建时或映像构建时运行一个composer更新命令(不知道两者是否都可以)。 我可以通过手动执行所有步骤(运行一个docker映像,敲击它,复制和

  • 这是我第一次尝试创建Docker形象,我希望有人能帮助我。我的Dockerfile大致如下所示: 基本上,我只是为了扩展jar文件而安装Java。运行makefile时,出现以下错误: /bin/sh:1:/usr/lib/jvm/java-7-openjdk-amd64:权限被拒绝 我一直试图效仿这个例子:https://registry.hub.docker.com/u/barnybug/op