Php Docker和symfony
我在和Docker搏斗 我正在尝试创建一个图像来处理symfony项目,同时学习Docker。 这是我的Dockerfile:Php Docker和symfony,php,symfony,docker,dockerfile,Php,Symfony,Docker,Dockerfile,我在和Docker搏斗 我正在尝试创建一个图像来处理symfony项目,同时学习Docker。 这是我的Dockerfile: FROM php:7-apache LABEL Description = "This image is used to start Symfony3 project" ENV DIRPATH /var/www/html # apt-get command RUN apt-get update && apt-get install -y \
FROM php:7-apache
LABEL Description = "This image is used to start Symfony3 project"
ENV DIRPATH /var/www/html
# apt-get command
RUN apt-get update && apt-get install -y \
vim \
git \
&& apt-get clean
# Install Composer
RUN curl -sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer
# Install the Symfony Installer
RUN curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony
RUN chmod a+x /usr/local/bin/symfony
我使用以下命令构建图像:
docker build -t symfony .
很好用!酷
我正在创建一个包含以下内容的容器:
docker run --name symfony -d -v "$PWD":/var/www/html -p 80:80 symfony
docker exec -ti symfony bash
效果也很好。web服务器正在正常端口上运行
我可以带着以下物品进入我的容器:
docker run --name symfony -d -v "$PWD":/var/www/html -p 80:80 symfony
docker exec -ti symfony bash
但当我尝试更新composer时,我有一些错误:
Failed to download symfony/symfony from dist: Could not decompress the archive, enable the PHP zip extension.
A php.ini file does not exist. You will have to create one.
如何在Dockerfile中创建php.ini
我还认为我在许可方面有问题。
当我尝试访问web/app_dev.php时,我收到以下消息:
You are not allowed to access this file. Check app_dev.php for more information.
您可以添加一个自定义
php.ini
配置,在dockerfile中指定它,
例如,您可以查看以下示例:
道夫
你可以在网上找到各种方法和各种样品
希望此帮助在缺少的
php.ini
文件旁边,您也应该安装zip,以便从dist下载,即
RUN docker-php-ext-install zip
它将安装并启用错误消息中请求的PHP zip扩展。我不能确定docker是否正确,但通常会将
PHP.ini
放在web/
文件夹中以覆盖默认的PHP.ini。在你的情况下,你检查过邮政分机吗?试着运行php-m | grep zip检查你是否安装了zip。嗨,仅供参考:docker文件中的每一行都将是一个新图像。如果您有多个'跑,#39; 命令的作用基本相同,您只需执行'&;amp&;amp' 及使用,#39;\' 对于换行符,例如运行curl-sS | php&&mv composer.phar/usr/local/bin/composer