如何解决使用composer在docker容器中缺少ext-gd
我在其中安装了composer的一个docker容器。我的docker-composer.yml看起来像这样:SELECT SID,NAME,SUBJECT,(
CASE
WHEN EXAMTYPE IN ('ASSIGNMENTS','PRACTICAL') THEN SUM(MARKS)
ELSE 0
END) AS "ASSIGNMENTS + PRACTICAL",(
CASE
WHEN EXAMTYPE = 'WRITTEN' THEN SUM(MARKS)
ELSE 0
END) AS "WRITTEN"
FROM MARKSHEET
WHERE EXAMTYPE IN ('ASSIGNMENTS','PRACTICAL','WRITTEN')
GROUP BY SID,EXAMTYPE
我的dockerfile:
webserver:
build: ./docker/php
ports:
- 80:80
links:
- mysql
volumes_from:
- app
composer:
image: composer:2.0
volumes_from:
- webserver
working_dir: /var/www/html
mysql:
image: mysql:5.7
environment:
MYSQL_DATABASE: "${DB_NAME}"
MYSQL_USER: "${DB_USER}"
MYSQL_ROOT_PASSWORD: "${DB_ROOT_PW}"
MYSQL_PASSWORD: "${DB_PW}"
volumes_from:
- data
data:
image: mysql:5.7.31
volumes:
- /var/lib/mysql
command: "true"
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- 8080:80
links:
- mysql
environment:
PMA_HOST: mysql
volumes:
- ./docker/php/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
app:
image: tianon/true
volumes:
- ./src/oxid:/var/www/html:delegated
现在,当我用FROM php:7.4.8-apache
COPY php.ini /usr/local/etc/php/
COPY 000-default.conf /etc/apache2/sites-available/
COPY ./ssl/ssl.crt /etc/apache2/ssl/ssl.crt
COPY ./ssl/ssl.key /etc/apache2/ssl/ssl.key
RUN a2enmod rewrite
RUN a2enmod expires
RUN a2enmod headers
RUN apt-get update
RUN apt-get install -y zlib1g-dev libxml2-dev libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12.0 imagemagick
RUN docker-php-ext-install mysqli soap pdo_mysql bcmath pdo
RUN docker-php-ext-configure gd --with-freetype --with-jpeg
RUN docker-php-ext-install gd
RUN docker-php-ext-configure intl
RUN docker-php-ext-install intl
# Install opcache
RUN docker-php-ext-install opcache
RUN a2enmod ssl
EXPOSE 80
EXPOSE 443
# Install APCu
RUN pecl install apcu
RUN echo "extension=apcu.so" > /usr/local/etc/php/conf.d/apcu.ini
打开index.php
时,它说已安装并启用了GD。
但是phpinfo();
给了我这个错误,我不太明白为什么。
- shopware / core [6.3.0.0,...,6.3.3.1]要求ext-gd *->从系统中丢失。安装或启用PHP的gd扩展。
有人可以告诉我如何为该作曲家程序启用GD。
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。