该软件包最新版本(dev-master)没有提供许可证信息。

使用docker启动纯PHP项目的骨架

安装: 0

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

语言:Makefile

类型:项目

dev-master 2020-05-30 22:42 UTC

This package is auto-updated.

Last update: 2024-09-29 06:08:52 UTC


README

使用docker启动纯PHP项目的骨架

使用此骨架创建全新的PHP项目,无需编写常见的样板代码,以便从头开始。

该项目旨在与以下开发环境一起使用

  • 类UNIX操作系统
  • Docker和Docker Compose
  • GNU Make

这些不是必需的,但强烈推荐。它将允许您无需本地安装任何东西,例如PHP本身、Composer、PHPUnit或Web服务器等。想法是作为一个容器化环境来执行所有这些。

启动新项目

安装docker后,创建您的项目

docker run --rm -it -v $(pwd):/app \
  composer create-project ebarbeito/php project-name

创建后,您可以从自定义composer.json文件开始,查看bin/脚本,或Makefile中的准备好的任务。

$ cd project-name
$ tree -f -I "README.md" .
.
├── ./Makefile
├── ./bin
│   ├── ./bin/composer
│   ├── ./bin/php
│   ├── ./bin/phpunit
│   └── ./bin/run
├── ./composer.json
├── ./config
│   ├── ./config/composer
│   │   └── ./config/composer/Dockerfile
│   ├── ./config/fpm
│   │   ├── ./config/fpm/Dockerfile
│   │   └── ./config/fpm/conf.d
│   │       └── ./config/fpm/conf.d/ext-xdebug.ini
│   └── ./config/nginx
│       └── ./config/nginx/site.conf
├── ./docker-compose.yml
├── ./phpunit.xml.dist
├── ./public
│   └── ./public/index.php
├── ./src
├── ./tests
│   ├── ./tests/Functional
│   │   └── ./tests/Functional/DummyFunctionalSuiteTest.php
│   ├── ./tests/Integration
│   │   └── ./tests/Integration/DummyIntegrationSuiteTest.php
│   └── ./tests/Unit
│       └── ./tests/Unit/DummyUnitSuiteTest.php
└── ./var

bin/脚本

由于没有安装任何开发工具(只有Docker),这些脚本的目标是模拟真实命令。

./bin/run脚本

./bin/run实际上是docker-compose run命令的包装器。因此,每次您执行它时,您实际上就是在运行docker-compose run

./bin/run <command> [arguments]

“命令”是在docker-compose.yml中定义的服务

  • ./bin/run composer [arguments]:使用composer
  • ./bin/run phpunit [arguments]:使用phpunit
  • ./bin/run php [arguments]:使用php

其他脚本

其他命令依赖于./bin/run来完成它们的任务。它们做的是同样的事情,但更简洁。

  • ./bin/composer [arguments]:使用composer
  • ./bin/phpunit [arguments]:使用phpunit
  • ./bin/php [arguments]:使用php

因此,而不是使用全局的php命令(或一个composer命令),这些脚本可以作为替代品以通常相同的方式使用。

Makefile任务

...

Docker Compose服务

...