fridaylabs/service

12因子服务骨架

安装: 1

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 0

开放问题: 0

类型:项目

dev-master 2017-07-26 12:14 UTC

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

包含内容

  1. nginx
  2. php7.1 + php-fpm
  3. slim ^3.0
  4. supervisord来管理一切

12因子清单

代码库

创建项目

composer create-project fridaylabs/service -s dev --no-install --ignore-platform-reqs <SERVICE_NAME>

并将其推送到您的仓库

依赖项

由composer解决

配置

  1. 所有配置应从环境变量中拉取。
  2. 不要使用如APPLICATION_ENVIRONMENT之类的变量!
  3. 使用.env文件进行本地设置

后端服务

使用配置来连接数据库、队列或其他服务

构建、发布、运行

  1. 输入make来构建
  2. 输入make dev来构建和运行本地版本
  3. 待办事项:将您的分支推送到运行测试,合并分支以发布

进程

  1. 确保您的应用程序是无状态的。
  2. 将所有数据存储到远程服务中

端口绑定

  1. 应用程序暴露80和443端口。
  2. 默认开发端口是8081

并发性

由php-fpm解决

可丢弃性

由supervisord解决

开发/生产一致性

由docker和composer解决

日志

  1. Nginx、php-fpm和应用程序将日志写入stdout
  2. 不要将日志写入文件系统

管理进程

待办事项