lkochniss/docker-symfony

此包已弃用且不再维护。未建议替代包。

Docker 和 Docker Compose 用于 Symfony 项目

安装: 114

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 296

语言:Shell

dev-master 2018-03-02 09:30 UTC

This package is not auto-updated.

Last update: 2018-04-30 11:25:06 UTC


README

这是一个从 https://github.com/eko/docker-symfony 分支出来的项目,目的是将包作为供应商使用,而不是从项目到项目地复制粘贴。

也请参阅 LICENCE.md

安装

在您的项目中要求使用 docker-symfony

composer require lkochniss/docker-symfony dev-master

添加 post-install-cmd 和 post-update-cmd 的自动脚本

ln -fs vendor/lkochniss/docker-symfony/docker-compose.yml docker-compose.yml

别忘了在您的 /etc/hosts 文件中添加 symfony.dev

确保您已将 database_hostparameters.yml 中调整为数据库容器别名 "db"

然后,运行

$ docker-compose up

您已完成,可以访问以下 URL 上的 Symfony 应用程序:http://symfony.dev(并在 http://symfony.dev:81 上访问 Kibana)

注意:您可以通过运行以下命令重建所有 Docker 镜像:

$ docker-compose build

您可能希望将 .logs/ 添加到您的 .gitignore

它是如何工作的?

以下是 docker-compose 构建的镜像

  • db:这是一个 MySQL 数据库容器(可以在 docker-compose.yml 文件中更改为 postgresql 或其他),
  • php:这是一个包含挂载应用程序卷的 PHP-FPM 容器,
  • nginx:这是一个挂载 PHP 卷的 Nginx 网络服务器容器,
  • elk:这是一个 ELK 堆栈容器,它使用 Logstash 收集日志,将它们发送到 Elasticsearch 并使用 Kibana 进行可视化。

这导致以下运行中的容器

> $ docker-compose ps
        Name                       Command               State              Ports
--------------------------------------------------------------------------------------------
dockersymfony_db_1      docker-entrypoint.sh mysqld      Up      0.0.0.0:3306->3306/tcp
dockersymfony_elk_1     /usr/bin/supervisord -n -c ...   Up      0.0.0.0:81->80/tcp
dockersymfony_nginx_1   nginx                            Up      443/tcp, 0.0.0.0:80->80/tcp
dockersymfony_php_1     php-fpm7 -F                      Up      0.0.0.0:9000->9000/tcp

读取日志

您可以在主机机器的以下目录中访问 Nginx 和 Symfony 应用程序日志:

  • logs/nginx
  • logs/symfony

使用 Kibana!

您还可以通过访问 http://symfony.dev:81 使用 Kibana 来可视化 Nginx 和 Symfony 日志。

代码许可

您可以在 0-clause BSD 许可证的条款下免费使用此存储库中的代码。LICENSE 包含此许可证的副本。