fridaylabs / service
12因子服务骨架
dev-master
2017-07-26 12:14 UTC
Requires
- php: >=7.1
- illuminate/support: ^5.4
- monolog/monolog: ^1.23
- slim/php-view: ^2.2
- slim/slim: ^3.0
- vlucas/phpdotenv: ^2.4
Requires (Dev)
- phpunit/phpunit: ^6.2
This package is not auto-updated.
Last update: 2024-09-15 04:05:32 UTC
README
TL;DR
安装
macOs: brew install docker
Linux/Unix
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'
apt-get update
apt-get install docker-engine
使用
make
来构建
make dev
来构建和运行本地版本
开发版本将在这里显示: http://localhost:8081
包含内容
- nginx
- php7.1 + php-fpm
- slim ^3.0
- supervisord来管理一切
12因子清单
代码库
创建项目
composer create-project fridaylabs/service -s dev --no-install --ignore-platform-reqs <SERVICE_NAME>
并将其推送到您的仓库
依赖项
由composer解决
配置
- 所有配置应从环境变量中拉取。
- 不要使用如APPLICATION_ENVIRONMENT之类的变量!
- 使用
.env
文件进行本地设置
后端服务
使用配置来连接数据库、队列或其他服务
构建、发布、运行
- 输入
make
来构建 - 输入
make dev
来构建和运行本地版本 - 待办事项:将您的分支推送到运行测试,合并分支以发布
进程
- 确保您的应用程序是无状态的。
- 将所有数据存储到远程服务中
端口绑定
- 应用程序暴露80和443端口。
- 默认开发端口是8081
并发性
由php-fpm解决
可丢弃性
由supervisord解决
开发/生产一致性
由docker和composer解决
日志
- Nginx、php-fpm和应用程序将日志写入stdout
- 不要将日志写入文件系统
管理进程
待办事项