gpt4 book ai didi

php - 在docker compose中打开php.ini添加扩展

转载 作者:行者123 更新时间:2023-11-29 15:38:22 35 4
gpt4 key购买 nike

我正在使用 docker compose,我想打开一些扩展并进行编辑。所以基本上我想打开 php.ini 文件。我们怎样才能准确地做到这一点呢?然而,我读到的一些解决方案说要在 docker_compose.yaml 中进行更改,我也在共享该文件。我正在使用 php laravel 框架,并在 ubuntu 服务器上运行应用程序。非常感谢任何帮助。提前致谢。docker_compose.yaml 看起来像这样。

version: '3.7'

services:
php:
container_name: eesotne-fpm
build: ./deployment/fpm
image: eesotne-fpm
entrypoint: ./deployment/fpm/entrypoint.sh
volumes:
- ./:/eesotne
depends_on:
- mysql
- redis
mysql:
container_name: eesotne-mysql
image: mysql:5.7
volumes:
- "mysql_data:/var/lib/mysql"
restart: always
environment:
- MYSQL_ROOT_PASSWORD=secret
- MYSQL_DATABASE=eestone
- MYSQL_USER=eestone
- MYSQL_PASSWORD=secret

admin:
container_name: eesotne-adminer
image: adminer
restart: always
depends_on:
- mysql
ports:
- 8081:8080

phpmyadmin:
container_name: eesotne-phpmyadmin
image: phpmyadmin/phpmyadmin
links:
- mysql
ports:
- 8080:80
environment:
MYSQL_USER: eesotne
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: eesotne
PMA_HOST: mysql
PMA_PORT: 3306

nginx:
container_name: eesotne-nginx
image: nginx
ports:
- "80:80"
volumes:
- ./deployment/nginx/default.conf:/etc/nginx/conf.d/default.conf
- ./:/eesotne
- ./deployment/logs/nginx:/var/log/nginx
depends_on:
- php

redis:
container_name: eesotne-redis
image: redis
volumes:
- redis_data:/data

portainer:
container_name: eesotne-portainer
image: portainer/portainer
ports:
- "9000:9000"
command: -H unix:///var/run/docker.sock
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
echo:
container_name: eesotne-echo
build: ./deployment/echo
entrypoint: ./deployment/echo/entrypoint.sh
working_dir: "/usr/src/app"
depends_on:
- redis
volumes:
- "./:/usr/src/app"
volumes:
redis_data:
portainer_data:
mysql_data:

最佳答案

您需要创建自定义图像。

不确定您如何构建图像,但似乎您已经有了包含您的规范的 docker 文件。

如果您使用官方镜像作为基础镜像来启用该镜像,那么构建 docker 镜像会非常容易。

要配置 php.ini,好的做法是预配置 php.ini 并将其复制到镜像以替换默认值。

FROM php:7.3-fpm
RUN docker-php-ext-install pdo pdo_mysql opcache
COPY config/php.ini /php.init
RUN mv /php.ini "$PHP_INI_DIR/php.ini"

希望这能有所帮助。

另一个肮脏的方法可能是使用 sed 命令用 shell 脚本更新您的 php.ini 来替换您的值。

关于php - 在docker compose中打开php.ini添加扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57975957/

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