【发布时间】:2019-08-11 08:00:56
【问题描述】:
我正在使用 PHP 的基础镜像在 ECS 上成功部署 Laravel Web 应用程序,特别是来自 https://hub.docker.com/_/php/ 的 7.3-apache-stretch
非常了解 Docker 中有关 Alpine Linux 图像的讨论(显着减小最终图像尺寸),我想试一试,看看它的表现如何。不幸的是,虽然使用 CLI 版本非常简单(使用 7.3-cli-alpine3.9),但没有启用 apache 的版本。我需要的是Dockerfile 作为我开发的基础。
仅限 Apache
浏览 SO,我发现 How do I run Apache 2 on Alpine in Docker? 引起了我对 https://github.com/nimmis/docker-alpine-apache 的关注,它启用了 apache,但是 PHP 完全丢失了,所以我必须集成它。
使用 FCGI 运行 Apache/NGINX 和 PHP
另一个问题Alpine variants of PHP and Apache/httpd in Docker 让我们更接近,但暗示使用两个容器,这不是我想要的。
Dockerfile 应该如何让我部署现成的 Laravel Web 应用程序?
【问题讨论】:
-
我想说的一件事:Laravel 至少需要一个带有 php 的网络服务器和一个数据库。两者都是独立的服务,所以也是独立的容器。所以这是我制作的一个 docker-compose,你可以复制 gist.github.com/thomasmoors/f86d69031de1562d55287f4a69b33137
-
感谢@Thomas,这实际上很有用,即使基于
php:7.2-apache,我们仍然会使用debian。
标签: php laravel apache docker alpine