4xxi/skeleton

维护者

详细信息

github.com/4xxi/skeleton

源代码

问题

安装: 182

依赖: 0

建议者: 0

安全: 0

星星: 54

观察者: 8

分支: 8

开放性问题: 0

类型:项目

v4.4 2020-05-19 12:50 UTC

This package is auto-updated.

Last update: 2024-09-08 22:44:15 UTC


README

4xxi Symfony Skeleton 是官方 Symfony Skeleton (使用 Symfony Flex 创建新项目的推荐方式) 的扩展。它的主要思想是保持官方 Skeleton 的简洁性,同时添加 4xxi 在开发大多数项目时必需的依赖和默认配置。它包含基本的 Symfony Skeleton 以及以下附加内容

  • 生产环境所需的最低限度必须拥有的包集
    • ORM 包 (Doctrine + 迁移)
    • FrameworkExtraBundle (注解)
    • MonologBundle
    • Sensiolabs SecurityChecker
  • 开发必需的一组包和工具
  • 针对 Linux 和 MacOS 开发优化的 Docker Compose 和 Docker Sync 配置
  • README.md 安装说明模板

创建新项目

使用 4xxi Symfony Skeleton 创建新项目与运行以下命令一样简单

composer create-project 4xxi/skeleton <project_name> 

其中 <project_name> 是您想要设置新项目的目录。新项目在完成此步骤后即可立即进行开发。

附加配置

Docker

4xxi Symfony Skeleton 附带了适用于 Linux 和 MacOS 本地开发的 Docker 配置(包括 PHP 7.1、nginx 和 PostgreSQL)。

  • 按照 docker-sync.ymldocker-compose-sync.yml 中的说明操作,并使用您的项目实际名称更新 project_name-data-sync 卷。这是为了保持用于 Docker Sync 的数据卷的唯一名称,以便多个项目同时开发的开发者使用。
  • 可选:按照 config/docker/php/Dockerfile 中的说明添加额外的 PHP 扩展到 PHP Docker 容器。
  • 可选:在 docker-compose.yml 中添加额外的服务(如 Redis、RabbitMQ、Elasticsearch)。

添加项目所需的包和依赖

使用 Flex 创建的项目默认只包含最小数量的依赖。大多数之前作为 Symfony Standard Edition 部分的额外组件都没有安装,因此如果您确实需要它们,您需要安装它们。

大多数组件可以通过运行以下命令进行安装和自动配置

composer req <component>

可能需要用于项目的常见组件列表

  • api
  • asset
  • twig
  • workflow
  • web-link

更新安装说明

完成前面的步骤后,更新安装说明并删除此文件中所有高于它们的说明。

安装说明

以下所有内容都是安装说明的模板。应更新为设置项目的完整步骤。

要求

配置

应用程序配置存储在 .env 文件中。

运行 cp .env.dist .env 以应用本地安装的默认配置。

HTTP 端口

如果您已安装 nginx 或 apache 并在主机系统上使用 80 端口,您可以在继续之前停止它们或通过更改 .env 文件中的 EXTERNAL_HTTP_PORT 的值重新配置 Docker 以使用另一个端口。

应用程序环境

您可以通过更改 .env 文件中的 APP_ENV 变量将应用程序环境更改为 devprod

数据库名称和凭证

可以通过修改以 POSTGRES 前缀开始的变量来重新配置数据库名称和凭证,在 .env 文件中。建议在更改这些值后重启容器(容器启动时会自动创建新的数据库)。

安装

1. 启动容器并安装依赖项

在 Linux 上

docker-compose up -d

在 MacOS 上

docker-sync-stack start

2. 运行迁移,安装数据样本

docker-compose exec php bin/console doctrine:migrations:migrate

3. 构建 frontend

在此处放置构建 frontend 的说明。

4. 打开项目

只需访问 https://

应用命令

在此处添加应用特定的控制台命令及其描述。

有用的命令和快捷方式

快捷方式

建议为以下常用容器命令添加简短的别名

  • docker-compose exec php php 在容器中运行 php
  • docker-compose exec php composer 运行 composer
  • docker-compose exec php bin/console 运行 Symfony CLI 命令
  • docker-compose exec db psql 运行 PostgreSQL 命令

检查代码风格和运行测试

通过运行 PHP CS Fixer 修复代码风格

docker-compose exec php vendor/bin/php-cs-fixer fix

运行 PHP 单元测试

docker-compose exec php bin/phpunit