ytake / gardening
适用于Web开发者的Vagrant(centos7)。
Requires
- php: ^5.5||^7.0
- symfony/console: ~2.3|~3.0|~4.0
- symfony/yaml: ~2.3|~3.0|~4.0
Requires (Dev)
- phpunit/phpunit: ^6.0
- symfony/var-dumper: ^3.0|^4.0
This package is auto-updated.
Last update: 2024-09-04 23:29:30 UTC
README
预先打包的Vagrant box,为您提供一个出色的开发环境
无需在本地机器上安装PHP(7.0 ~ 7.2)、Web服务器(Nginx或Apache)
以及任何其他服务器软件。
php7 box
{ "require-dev": { "ytake/gardening": "~1.0" } }
(仅支持virtualbox)
boxes
https://atlas.hashicorp.com/ytake
包含的软件
- CentOS 7
- Git
- PHP 7.x (remi仓库)
- Apache (2.4.6)
- Nginx (1.14)
- MySQL (5.7)
- Sqlite3
- PostgreSQL (10.1)
- Composer (1.5)
- Node.js (Gulp, webpack)
- Redis(4.0)
- Memcached
- Elasticsearch(6.1)
- Kibana(6.1)
- MongoDB
- Java(1.8)
- fluentd
- Couchbase(5.1)
- beanstalkd(1.10)
- RabbitMQ(3.7.2)
- Apache Cassandra(3.11)
- Apache Spark(2.2.1)
- Apache Kafka(1.0.0 / Confluent Platform)
包含的PHP扩展
[PHP Modules]
amqp
apc
apcu
ast
bcmath
bz2
calendar
cassandra
Core
couchbase
ctype
curl
date
dom
ds
event
exif
fileinfo
filter
ftp
gd
geoip
gettext
gmp
grpc
hash
iconv
igbinary
imagick
intl
json
ldap
libsodium
libxml
mbstring
mcrypt
memcached
memprof
mongodb
msgpack
mysqli
mysqlnd
openssl
pcntl
pcre
pcs
PDO
pdo_dblib
pdo_mysql
pdo_pgsql
pdo_sqlite
pdo_sqlsrv
pgsql
phalcon
Phar
phpiredis
posix
protobuf
rdkafka
readline
redis
Reflection
session
shmop
SimpleXML
soap
sockets
sodium
solr
SPL
sqlite3
sqlsrv
ssh2
standard
Stomp
swoole
sysvmsg
sysvsem
sysvshm
tokenizer
uopz
uuid
wddx
xdebug
xhprof
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaml
Zend OPcache
zip
zlib
zmq
[Zend Modules]
Xdebug
Zend OPcache
Composer全局
包含
- friendsofphp/php-cs-fixer
- squizlabs/php_codesniffer
- phpmd/phpmd
MySQL和PostgreSQL,RabbitMQ
- 用户: gardening
- 密码: 00:secreT,@
Xdebug
默认
xdebug.remote_enable = 1
xdebug.remote_connect_back = 1
xdebug.max_nesting_level = 512
xdebug.idekey = PHPSTORM
php7.0
xdebug.remote_port = 9070
php7.1
xdebug.remote_port = 9071
php7.2
xdebug.remote_port = 9072
安装Gardening Box
情况1,您的"home"目录
$ cd ~ $ git clone https://github.com/ytake/gardening.git gardening
从gardening目录执行setup.sh(Windows .bat)命令以创建vagrant.yaml配置文件。(隐藏目录~/.gardening)
$ bash setup.sh
情况2,按项目安装
要直接在您的项目中安装gardening,请使用Composer引入它
$ composer require ytake/gardening --dev
使用make命令在项目根目录中生成Vagrantfile和gardening.yaml(或gardening.json)文件。
$ ./vendor/bin/gardening gardening:setup
gardening.json
$ ./vendor/bin/gardening gardening:setup --filetype=json
配置
选择Web服务器
默认Nginx
web_server: nginx
如果需要,可以选择Apache
web_server: httpd
选择PHP版本
默认PHP7.2
php-alternatives: "7.1"
(7.0或7.1或7.2)
配置共享文件夹
folders: - map: /path/to/yourProject to: /home/vagrant/yourProjectName
许多共享文件夹
folders: - map: /path/to/yourProject to: /home/vagrant/yourProjectName - map: /path/to/yourSecondfProject to: /home/vagrant/yourSecondProjectName
配置站点
sites: - map: gardening.app.vagrant to: /home/vagrant/yourProject/public
许多站点
sites: - map: gardening.app.vagrant to: /home/vagrant/yourProject/public - map: gardening.second.app to: /home/vagrant/yourSecondProject/public
通过设置类型选项使用symfony
sites: - map: gardening.app.vagrant to: /home/vagrant/yourProject/public type: symfony
symfony: symfony2, 3 / symfony4: symfony4
多PHP版本
sites: - map: gardening.app.vagrant to: /home/vagrant/yourProject/public php: "7.1" - map: gardening.second.app to: /home/vagrant/yourSecondProject/public php: "7.2"
可选
Fluentd
通过将fluentd选项设置为true使用Fluentd
fluentd: true
MongoDB
通过将mongodb选项设置为true使用MongoDB
mongodb: true
Elasticsearch
通过将elasticsearch选项设置为true使用Elasticsearch
elasticsearch: true
Kibana
通过将kibana选项设置为true使用Kibana
kibana: true
访问Kibana http://vagrantIpAddress:5601/app/kibana
Couchbase
通过将couchbase选项设置为true使用Couchbase
couchbase: true
访问管理控制台 http://vagrantIpAddress:8091
Apache Cassandra
通过将cassandra选项设置为true使用Apache Cassandra
cassandra: true
RabbitMQ
通过将rabbitmq选项设置为true使用RabbitMQ
rabbitmq: true
访问rabbitmq管理Web UI http://vagrantIpAddress:15672
Apache Kafka (Confluent Platform)
通过将confluent选项设置为true使用Kafka
confluent: true
端口
默认情况下,以下端口被转发到您的gardening环境
- SSH: 2222 → 转发到22
- HTTP: 8000 → 转发到80
- HTTPS: 44300 → 转发到 443
- MySQL: 33060 → 转发到 3306
- Postgres: 54320 → 转发到 5432
- MongoDB: 47017 → 转发到 27017
- Elasticsearch: 19200 → 转发到 9200
- kibana: 56010 → 转发到 5601
- Cassandra: 19042 → 转发到 9024
- Kafka: 19092 → 转发到 9092
转发其他端口
ports: - send: 7777 to: 777