gpt4 book ai didi

php - Composer 不在 docker 容器 : "https://packagist.org/packages.json" does not contain valid JSON 中工作

转载 作者:行者123 更新时间:2023-12-02 18:00:17 25 4
gpt4 key购买 nike

我有一个运行 Symfony 应用程序的 docker 容器(运行良好)。容器内的 Composer install/require 命令(例如 composer require annotations)通常会失败并出现以下错误:

[Seld\JsonLint\ParsingException]                                        
"https://packagist.org/packages.json" does not contain valid JSON
Parse error on line 1:
\\\\\\u��n[7
���
^
Expected one of: 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['

我还没有真正找到命令成功与否的模式,这似乎完全是随机的。我觉得这可能是缓存/网络问题,因为它通常工作一段时间然后停止工作一段时间,但我不确定。 Composer 命令在主机系统上运行良好(Ubuntu 17.10/18.04 - 认为更新可能有帮助但没有什么不同)。容器中 Composer 的所有其他东西都可以正常工作。无论我在容器中打开一个 shell 并在那里运行命令还是通过 docker-compose exec 运行命令,结果都是一样的。

这是我的 Dockerfile:

FROM alpine:3.6

RUN apk add --update \
php7-fpm \
php7-apcu \
php7-ctype \
php7-curl \
php7-dom \
php7-gd \
php7-iconv \
php7-imagick \
php7-json \
php7-intl \
php7-mcrypt \
php7-mbstring \
php7-opcache \
php7-openssl \
php7-pdo \
php7-pdo_mysql \
php7-mysqli \
php7-xml \
php7-zlib \
php7-phar \
php7-tokenizer \
php7-session \
php7-xmlwriter \
php7-simplexml \
make \
curl

RUN rm -rf /var/cache/apk/* && rm -rf /tmp/*

RUN curl --insecure https://getcomposer.org/composer.phar -o /usr/bin/composer && chmod +x /usr/bin/composer

ADD symfony.ini /etc/php7/php-fpm.d/
ADD symfony.ini /etc/php7/cli/conf.d/

ADD symfony.pool.conf /etc/php7/php-fpm.d/

CMD ["php-fpm7", "-F"]

WORKDIR /var/www/symfony
EXPOSE 9000

我通过 docker-compose 运行它,它将一个卷挂载到/var/www/symfony 并公开端口:

version: '2.1'

services:
php:
build: .
volumes:
- ./symfony:/var/www/symfony
ports:
- 9000:9000

我如何让它工作?有什么我不知道的设置需要激活才能使 composer 能够正确连接吗?

最佳答案

您可以将其添加到您的 DockerFile 中:

RUN composer config --global repo.packagist composer https://packagist.org

关于php - Composer 不在 docker 容器 : "https://packagist.org/packages.json" does not contain valid JSON 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50103847/

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