Compare commits

...

579 Commits

Author SHA1 Message Date
09c5ad273c re-position COMPOSE_CONVERT_WINDOWS_PATHS 2017-03-21 10:06:26 -04:00
99b8a45f3b Merge branch 'master' of https://github.com/Laradock/laradock
* 'master' of https://github.com/Laradock/laradock:
  Fixed path variable for windows users
  fixes up so Yarn is installable again
  align file format
  for file format
  use '`' to quote identifier
  use CREATE USER to define account authentication characteristics
  use CREATE USER to define account authentication characteristics
  Updated project example confs to fit nameing convention used in apache example
  Updated project example confs to not have gitignore issues
  docker-71 file now also works with new env-example setup
  Adding Arg to docker-compose
  Adding MSSQL Support
2017-03-21 10:02:10 -04:00
4f416da26b add missing env variable APPLICATION
closes #703
2017-03-21 10:01:37 -04:00
53b73798d3 Merge pull request #704 from Mvzundert/master
Fixed path variable for windows users
2017-03-21 09:59:57 -04:00
c6e9b1ed5d Fixed path variable for windows users 2017-03-21 11:21:26 +01:00
9096737aa7 Merge pull request #694 from Mvzundert/master
Docker-71 and Nginx examples
2017-03-20 13:22:49 -04:00
3429681f2c Merge pull request #670 from cabrerabywaters/MSSQL_SUPPORT
Mssql support
2017-03-20 13:20:08 -04:00
d4c727bb2d Merge pull request #700 from picospuch/master
fix some errors in mysql setup file for latest mysql image
2017-03-20 13:16:05 -04:00
1ae104167a Merge pull request #701 from thorerik/fix-yarn
Fix yarn installation
2017-03-20 13:15:39 -04:00
8869b22a1d fixes up so Yarn is installable again 2017-03-20 10:33:25 +01:00
1650af04cd align file format 2017-03-20 15:41:03 +08:00
bdcc2adf3f for file format 2017-03-20 15:40:07 +08:00
570be592bb use '`' to quote identifier 2017-03-20 15:36:58 +08:00
d94de05fd4 use CREATE USER to define account authentication characteristics 2017-03-20 15:06:45 +08:00
69c180d2e8 use CREATE USER to define account authentication characteristics 2017-03-20 15:01:16 +08:00
134911843a Merge branch 'master' into MSSQL_SUPPORT 2017-03-18 19:11:01 -03:00
4588685e97 Updated project example confs to fit nameing convention used in apache example 2017-03-17 19:34:32 +01:00
4b2ddfad20 Updated project example confs to not have gitignore issues 2017-03-17 19:32:45 +01:00
516b148dae Merge branch 'master' of github.com:laradock/laradock 2017-03-17 16:56:14 +01:00
0c53eadf34 docker-71 file now also works with new env-example setup 2017-03-17 16:55:53 +01:00
3e61554625 Merge pull request #687 from jefhar/jefhar-patch-1
Jefhar patch 1
2017-03-17 11:09:45 -04:00
6054c2d250 Merge pull request #686 from cjmaxik/patch-3
Update Dockerfile-71
2017-03-17 11:08:29 -04:00
5589a12b9d Merge pull request #691 from davidtaboas/patch-1
Fix Dockerfile-70
2017-03-17 11:07:36 -04:00
e2384e2722 Merge pull request #689 from picospuch/patch-1
Update env-example
2017-03-17 11:07:21 -04:00
d077085595 Merge pull request #688 from Mvzundert/master
re-added .gitignore for nginx dir, still do not want configs in git
2017-03-17 11:07:06 -04:00
53f1032975 Merge pull request #673 from cabrerabywaters/PHP_WORKER
Php worker
2017-03-17 11:05:53 -04:00
875ec23ade Merge pull request #661 from g9308370/add_apache_vhost_conf
Add apache2 vhost & example
2017-03-17 11:01:10 -04:00
cee9de7ed1 Fix Dockerfile-70
Add ;fi to end if INSTALL_INTL block
2017-03-17 10:10:32 +01:00
badad156e1 Merge branch 'master' into add_apache_vhost_conf 2017-03-17 16:37:59 +08:00
8e89725381 Update env-example 2017-03-17 16:37:42 +08:00
baf29b1223 re-added .gitignore for nginx dir, still do not want configs in git 2017-03-17 08:48:47 +01:00
9ae6e45dda Merge branch 'master' of https://github.com/Laradock/laradock
* 'master' of https://github.com/Laradock/laradock:
  Update docker-compose.yml
  intl support
2017-03-17 02:46:35 -04:00
94d88e91c5 add missing steps to the docs 2017-03-17 02:46:19 -04:00
8b4901ce57 Closed if
Closed if [] ;fi in Human Language and Character Encoding Support:
2017-03-16 23:28:29 -07:00
08086be4c5 PHP_FPM_INSTALL_INTL env-example
added PHP_FPM_INSTALL_INTL=false to PHP_FPM_INSTALL_INTL=false
2017-03-16 23:26:54 -07:00
f2805bca52 Update docker-compose.yml 2017-03-16 22:21:26 -03:00
033e1b8721 Merge branch 'master' into PHP_WORKER 2017-03-16 21:59:28 -03:00
9e290ffddb Merge pull request #680 from cjmaxik/feature-intl
Adding intl support to php-fpm container
2017-03-16 20:57:47 -04:00
6ada2f1b91 nginx samples sites for multiple projects
- add `project-1.conf` and `project-1.conf` to match the docs.
- keep default to work with both multiple and single projects.
- delete the .gitignore.
- update docker-compose and example-env file to match the new settings
- update the docs
- delete `laravel-https.conf` to replace it with documentation instead
2017-03-16 20:53:14 -04:00
c6e393f5ce Update Dockerfile-71
We have already 7.1 image builded. + intl and ghostscript support 
https://github.com/laradock/laradock/pull/672
https://github.com/laradock/laradock/pull/680
2017-03-17 10:32:04 +10:00
4e443cec09 Merge branch 'master' into feature-intl 2017-03-17 10:08:21 +10:00
528b60eb17 fixing Volumes and Workdir 2017-03-16 21:03:04 -03:00
aedc7c8438 edit the docs 2017-03-16 19:28:01 -04:00
ec4ccb4a20 Move CNAME from the docs to the DOC.. 2017-03-16 18:33:29 -04:00
de6040a14d move the documentation markdown files outside the generated html folder 2017-03-16 17:44:14 -04:00
e0e4616ae0 update installation steps in the docs (.env) 2017-03-16 17:03:05 -04:00
c00fe5d7e0 Merge branch 'multiple-projects-improvement'
* multiple-projects-improvement:
  updated env-example and removed .env.example
  complete missings
  Seperated mysqli and tokenizer as seperate options without putting them under code igniter
  Apache should just go to /var/www not /var/www/public when supporting multiple projects
  fixed example and docker-compose.yml
  Fixed php-fpm variables and example
  Split up mysqli and tokenizer
  Removed homestead entirely this time
  Removed homestead entirely this time
  Removed Homestead reference in all DB containers
  Removed reference to homestead
  Fixed timezone issue in docker-compose.yml
  Added NGINX from env file and updated env-example
  Updated PHP-FPM container to accept .env variables
  Added workspace from env file and updated env-example
  Removed .env file
  Added env-example and adjusted docker-compose yml to support new env file
  Updated gitignore
2017-03-16 16:10:28 -04:00
30cf27e011 Fix nginx: [emerg] BIO_new_file("/var/certs/cert1.pem") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/var/certs/cert1.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file) 2017-03-16 15:56:37 -04:00
dcec8a46a8 replace the links with depends_on in the docker-compose file
closes #636
2017-03-16 15:11:04 -04:00
1c7e2e7d85 Merge pull request #684 from laradock/revert-639-master
Revert "Add apache conf file for specific virtualhost ServerName"
2017-03-16 14:41:12 -04:00
1d6583e97e Revert "Add apache conf file for specific virtualhost ServerName" 2017-03-16 14:40:45 -04:00
1cf5bcde62 Merge pull request #682 from MauricioTRS/master
Elasticsearch - Fix plugins directory
2017-03-16 13:35:24 -04:00
db40c67f75 Merge pull request #639 from tiknil/master
Add apache conf file for specific virtualhost ServerName
2017-03-16 13:30:14 -04:00
e10ba9fa9f Merge pull request #617 from alchimik/patch-1
don't load opcache extension twice
2017-03-16 13:28:28 -04:00
a42a295951 Merge pull request #485 from AliveCorpse/feature/workspace_with_php_7.1
Add dokerfile with php 7.1
2017-03-16 13:26:36 -04:00
0678415663 Merge pull request #484 from AliveCorpse/feature/php_fpm_v7.1
Add dockerfile with php-fpm 7.1
2017-03-16 13:26:14 -04:00
73a3745cc3 Merge pull request #370 from philtrep/certbot
Certbot container
2017-03-16 13:25:15 -04:00
bed0fd9bdb Elasticsearch - Fix plugins directory 2017-03-16 14:24:56 -03:00
3f1d4b70a6 Merge pull request #650 from wayanjimmy/feature/mailhog
Add mailhog for mail debugging
2017-03-16 13:23:28 -04:00
218ffe641e Merge pull request #659 from thorerik/fix-issue-619
Fix issue 619
2017-03-16 13:21:17 -04:00
be39e93ea2 Merge pull request #672 from cabrerabywaters/GOHSTSCRIPT_SUPPORT
Gohstscript support
2017-03-16 13:11:08 -04:00
783c9321c9 Merge pull request #679 from davidvleung/master
Refine container name retrieval
2017-03-16 13:10:00 -04:00
c62ce7d36f Update docker-compose.yml 2017-03-16 09:59:52 +10:00
8ee2229c84 intl support 2017-03-16 09:59:05 +10:00
735647bdf7 Refine container definition
Changed to `docker ps` because this one word wraps.  `docker-compose ps` will create a newline if text is too long in a small terminal window.  Also `awk` represents tokens better than ones created with a " " delimiter.
2017-03-15 13:51:54 -10:00
f61535427c Merge pull request #677 from Mvzundert/multiple-projects-improvement
updated env-example and removed .env.example
2017-03-15 18:36:49 -04:00
0d41c3d65e updated env-example and removed .env.example 2017-03-15 09:12:07 +01:00
cbd3cf7c20 Adding php-worker container to docker-compose 2017-03-14 11:06:45 -03:00
d505871faf Adding php-worker for Laravel 2017-03-14 11:05:22 -03:00
9c14954ff4 Adding GHOSTSCRIPT support 2017-03-14 10:59:38 -03:00
fd0cbff16c Adding ARG to docker-compose 2017-03-14 10:58:35 -03:00
246814874c Adding Arg to docker-compose 2017-03-14 10:49:44 -03:00
1250668267 Adding MSSQL Support 2017-03-14 10:47:10 -03:00
faa42d8651 Merge branch 'Mvzundert-multiple_frameworks'
* Mvzundert-multiple_frameworks:
  complete missings
  Seperated mysqli and tokenizer as seperate options without putting them under code igniter
  Apache should just go to /var/www not /var/www/public when supporting multiple projects
  fixed example and docker-compose.yml
  Fixed php-fpm variables and example
  Split up mysqli and tokenizer
  Removed homestead entirely this time
  Removed homestead entirely this time
  Removed Homestead reference in all DB containers
  Removed reference to homestead
  Fixed timezone issue in docker-compose.yml
  Added NGINX from env file and updated env-example
  Updated PHP-FPM container to accept .env variables
  Added workspace from env file and updated env-example
  Removed .env file
  Added env-example and adjusted docker-compose yml to support new env file
  Updated gitignore
2017-03-13 21:03:58 -04:00
ab1d5bae95 complete missings 2017-03-13 21:03:31 -04:00
7f27073a4e Merge branch 'multiple_frameworks' of https://github.com/Mvzundert/laradock into Mvzundert-multiple_frameworks
* 'multiple_frameworks' of https://github.com/Mvzundert/laradock:
  Seperated mysqli and tokenizer as seperate options without putting them under code igniter
  Apache should just go to /var/www not /var/www/public when supporting multiple projects
  fixed example and docker-compose.yml
  Fixed php-fpm variables and example
  Split up mysqli and tokenizer
  Removed homestead entirely this time
  Removed homestead entirely this time
  Removed Homestead reference in all DB containers
  Removed reference to homestead
  Fixed timezone issue in docker-compose.yml
  Added NGINX from env file and updated env-example
  Updated PHP-FPM container to accept .env variables
  Added workspace from env file and updated env-example
  Removed .env file
  Added env-example and adjusted docker-compose yml to support new env file
  Updated gitignore
2017-03-13 19:29:30 -04:00
1a80385a48 change some desgins in the docs site 2017-03-10 13:48:13 -05:00
f7b94ac599 Merge branch 'non-framework' into multiple_frameworks 2017-03-09 09:33:40 +01:00
ff39e6045d Merge branch 'multiple_frameworks' of github.com:Mvzundert/laradock into multiple_frameworks 2017-03-09 09:32:13 +01:00
07ebd5f69b Fixed merge conflicts when merging upstream with master 2017-03-09 09:30:47 +01:00
36fcc6674e Seperated mysqli and tokenizer as seperate options without putting them under code igniter 2017-03-09 09:29:07 +01:00
37ed904f1a add vhost example 2017-03-09 10:26:47 +08:00
7a343f168f Updated with laradock master 2017-03-08 16:08:42 +01:00
0ac0166068 Merge branch 'master' into multiple_frameworks 2017-03-08 11:33:20 +01:00
048b55186e Fix issue 619 2017-03-08 09:26:08 +01:00
94c6240586 workaround for 'Xdebug breaks on access to class static property' (#654)
see https://github.com/docker-library/php/issues/133
2017-03-08 00:15:46 -05:00
178d7e1505 fix selenium (#655)
see https://github.com/SeleniumHQ/docker-selenium#running-the-images
2017-03-07 23:57:18 -05:00
082a73ee33 Bump NVM script version to 0.33.1 (#658)
https://github.com/creationix/nvm/releases/tag/v0.33.1
2017-03-07 23:56:35 -05:00
25c2768557 Apache should just go to /var/www not /var/www/public when supporting multiple projects 2017-03-06 22:26:17 +01:00
1d918a71d8 fixed example and docker-compose.yml 2017-03-06 22:20:31 +01:00
9e3f8dd43d fixed merge conflicts 2017-03-06 21:25:16 +01:00
164b699f24 Merge pull request #653 from thorerik/add-minio
Add minio container
2017-03-06 09:37:56 -05:00
c63bf5ea07 Revert "Docs updated"
This reverts commit d95b52b7db.
2017-03-06 10:58:05 +01:00
46fcb9e09c Fixed php-fpm variables and example 2017-03-06 09:31:11 +01:00
603010cbd5 Split up mysqli and tokenizer 2017-03-06 09:03:12 +01:00
d95b52b7db Docs updated 2017-03-05 15:07:29 +01:00
a7503ce3f3 Add Minio container
Minio is an s3 compatible server written in go.
2017-03-05 15:06:22 +01:00
48710f19c3 Sync with master 2017-03-04 02:10:34 +08:00
0983cc98fe Setup mailhog 2017-03-04 02:07:29 +08:00
6be81f05c2 - Aggiunto servizio php-worker per avviamento queue 2017-03-02 12:14:38 +01:00
84b742315a Update README-zh.md (#648) 2017-03-02 16:56:35 +08:00
8317fbde5c - Eliminato .env dal repo git per poterlo linkare nel progetto locale
- Impostata configurazione dinamica porte per apache
2017-03-01 15:55:33 +01:00
b45f395996 Removed homestead entirely this time 2017-03-01 08:29:17 +01:00
59dfacee13 Removed homestead entirely this time 2017-03-01 08:17:34 +01:00
a6e0338245 Removed Homestead reference in all DB containers 2017-03-01 08:08:20 +01:00
f610aa63d1 Removed reference to homestead 2017-02-27 15:58:38 +01:00
966a84fa39 Fixed timezone issue in docker-compose.yml 2017-02-27 14:49:43 +01:00
356dc36fd5 Added NGINX from env file and updated env-example 2017-02-27 14:11:16 +01:00
c112fdffc1 Updated PHP-FPM container to accept .env variables 2017-02-27 14:05:47 +01:00
fa9ac1e471 Added workspace from env file and updated env-example 2017-02-27 13:53:40 +01:00
3f13aa4f50 Removed .env file 2017-02-27 12:36:44 +01:00
474504f1d3 Added env-example and adjusted docker-compose yml to support new env file 2017-02-27 12:35:28 +01:00
ca45806aaa Updated gitignore 2017-02-27 12:34:20 +01:00
4947dfaad1 - Add apache conf file for specific virtualhost ServerName 2017-02-25 21:25:33 +01:00
9cb902a819 fix php warning in php-fpm: "Unable to load dynamic library aerospike" (#622)
* fix php warning in php-fpm: "Unable to load dynamic library aerospike"

* 	fix php warning in php-fpm: "Unable to load dynamic library aerospike"

* simplify solution

* Update Dockerfile-56

* Update Dockerfile-70
2017-02-25 11:11:45 +08:00
89ff840880 Adding DNS Plugins (#635)
This updates the download URL to include the DNS provider plugins so that we can use letsencrypt on our local environment. One thing to note, the version is not currently available as part of the dynamic download URL so this may need looking at in the future.
2017-02-24 21:55:56 +08:00
df40020eea xdebugPhpFpm executable (#631) 2017-02-23 22:15:14 +08:00
7ca8aef0d0 remove html tag. 2017-02-23 13:39:39 +08:00
a37ba5c477 solve the sidebar problem in the docs 2017-02-22 23:08:54 -05:00
d0c0a13e28 change docs font and add ga 2017-02-22 22:19:03 -05:00
39767cc038 Merge branch 'master' of https://github.com/laradock/laradock
* 'master' of https://github.com/laradock/laradock:
  update readme text
2017-02-22 21:35:17 -05:00
ba8f911d64 fix docs colors to match with lara.. 2017-02-22 21:35:05 -05:00
97c9fbf469 update readme text 2017-02-22 16:45:46 -05:00
f5b3c95068 add how to contribute to the docs 2017-02-22 16:17:15 -05:00
e5fa629a64 update the docs 2017-02-22 15:58:06 -05:00
8e8020e8b0 update the readme.md + re-generate the site 2017-02-22 15:31:27 -05:00
edb32f5dd1 Merge pull request #629 from laradock/new-docs
New docs
2017-02-22 15:23:09 -05:00
cc22684420 generate the static docs site in the docs root 2017-02-22 15:22:42 -05:00
eab4f7c88f generate site in public folder 2017-02-22 15:13:04 -05:00
f91ffcfd20 move the readme.md content to hugo site 2017-02-22 14:59:06 -05:00
b995b3692e Create CNAME 2017-02-22 09:32:40 -05:00
0ddafaf362 add docs/ to generate github page 2017-02-22 09:31:31 -05:00
86031105be Merge branch 'master' of https://github.com/laradock/laradock
* 'master' of https://github.com/laradock/laradock:
  Fix Caddy volumes to persist SSL (#613)
  Fixed memcached for php5.6 (#624)
2017-02-21 10:28:18 -05:00
ee481a2a26 update Improving Docker on Mac Speed Docs 2017-02-21 10:28:02 -05:00
770a9779ca Fix Caddy volumes to persist SSL (#613)
I'm blaming commit 380eef5fd9 for breaking this functionality.
2017-02-21 23:26:56 +08:00
cdaa344321 Fixed memcached for php5.6 (#624)
```
Step 15/32 : RUN if [ ${INSTALL_MEMCACHED} = true ]; then     pecl install memcached &&     docker-php-ext-enable memcached ;fi
 ---> Running in b43e2e6b07f6
pecl/memcached requires PHP (version >= 7.0.0), installed version is 5.6.24
pecl/memcached can optionally use PHP extension "igbinary" (version >= 2.0)
pecl/memcached can optionally use PHP extension "msgpack" (version >= 2.0)
No valid packages found
install failed
ERROR: Service 'php-fpm' failed to build: The command '/bin/sh -c if [ ${INSTALL_MEMCACHED} = true ]; then     pecl install memcached &&     docker-php-ext-enable memcached ;fi' returned a non-zero code: 1
```
2017-02-21 23:23:30 +08:00
7b542618f0 Update opcache.ini 2017-02-19 13:26:18 +08:00
6440ca841a change application source #397 (#609)
# fix a problem--#397, change application source from dl-cdn.alpinelinux.org to aliyun source.
2017-02-15 09:34:30 -05:00
fac84cd45b Add a config file for mariaDB (#605) 2017-02-11 10:51:10 +08:00
21a83bd5a3 safer opcache settings (#604) 2017-02-10 15:37:03 -05:00
f333982598 instruction to improve d4m speed (#597)
* instruction to improve d4m speed

* Move mac speed doc to misc section, remove docker-sync instructions
2017-02-10 08:11:24 -05:00
00550d328c Various readme typo fixes/improvements (#593)
* Various readme typo fixes/improvements

* Change Laradock -> LaraDock
2017-02-08 18:45:48 +08:00
e8bb2b29fd update README.md to show how to driectly go to the mysql prompt within the mysql container (#592) 2017-02-08 09:50:07 +08:00
ffdb35dc6a Merge pull request #591 from abtrumpet/fix-soap
Fixed SOAP for both php-fpm and CLI
2017-02-07 18:27:31 -05:00
cf34c4ed32 Fixed SOAP for both php-fpm and CLI 2017-02-07 15:21:30 -07:00
f7d915256b xdebugPhpFpm permission denied fix (#587)
* xdebugPhpFpm permission denied fix

* xdebugPhpFpm might not have execution access when cloned. This
addition to readme helps tell the user why he got Permission Denied and
what can be done to fix it.

* Fix doesn't spelling, remove newline

* This is fixup for `38e26c3`.
2017-02-07 16:39:33 +08:00
8f44a0800b add Keep track of your Laradock changes section to the docs 2017-02-05 11:56:06 -05:00
9348dd95a0 Issues 563 (#580)
* https://github.com/laradock/laradock/issues/563
hotfix

* https://github.com/laradock/laradock/issues/563
\r

* https://github.com/laradock/laradock/issues/563
\r
2017-02-05 11:03:41 -05:00
37508bb3ca Add Queue Worker as a starting point (#581)
* Add Queue Worker as an starting point

By https://github.com/laradock/laradock/issues/14#issuecomment-276374969

* Fix typo
2017-02-04 12:13:25 -05:00
c3f5dfa741 Add Mike Erickson to the Admins team 2017-02-03 15:28:27 -05:00
6288935884 remove production-docker-compose.yml
We need to add the docs later.

Closes #524
2017-02-03 10:18:23 -05:00
c5e2e7e1e2 Add deployer support (#579)
* add deployer option

* export path for all composer global installations

* add deployer option

* fix typo

* add readme for deployer installation

* deployer default option changed to false

* Add missing deployer menu
2017-01-31 17:05:42 +08:00
e9d4e5579e Fixing issue 568 (#574)
Increasing buffer sizes for applications like react/babel.

Working on default images was throwing intermitten NGing errors and
requried multiple refreshes
2017-01-27 16:31:46 +08:00
5d2761bc92 Add missing PhpRedis option (#570) 2017-01-26 22:19:13 +08:00
Ivo
43b9515b61 add alias support for laradock user (#572)
add the same alias support as root for the laradock user, inlined the multiple RUN commands
2017-01-26 22:18:09 +08:00
a94f08920a add php exif (#564)
* add php exif

* format
2017-01-22 12:20:27 +08:00
b52dcd4a19 540 added alias support (#557)
* 540 added alias support

* Updated aliases, added content to README.md
2017-01-17 19:09:05 -05:00
TJ
4c8e09526d Fix Workspace Cron Permissions (#555)
When I submitted #538 it looks like I overlooked the crontab file
permissions for the Laradock user. This change ensure that all
crons added during build are set to the correct permission level.
2017-01-16 11:10:49 -05:00
a80ef301a9 541-add-linuxbrew-option (#543)
* 541-add-linuxbrew-option

* 541 updated readme with installation information
2017-01-13 14:12:44 -05:00
fbc71b5a22 Merge pull request #552 from FalAngelSt/patch-1
fixed redis php extension instalation bug
2017-01-13 21:58:55 +08:00
ad5883cdfd fixed redis php extension instalation bug
remove unnecessary RUN command
2017-01-13 15:53:23 +02:00
f9fe45cb75 Merge pull request #551 from mylxsw/master
bugfix for phpredis configuration
2017-01-13 15:18:18 +08:00
a8120a1c46 bugfix for phpredis configuration
bugfix for phpredis configuration
2017-01-13 15:06:35 +08:00
6c55f47fd4 Added instructions on how to fix time lag, this fixes #372, #462 (#547) 2017-01-12 19:26:29 -05:00
f1cd4bb0e2 added phpredis in dockerfile70 (#546) 2017-01-12 19:06:08 -05:00
53146df5d6 Merge pull request #544 from gfd6th/master
Fix bug on mariadb
2017-01-12 18:55:35 +08:00
14f6dffe99 Fix bug on mariadb
Bug on Docker for Mac when we change the database from mysql to mariadb.

Maybe It is not a perfect fix. This fix will not share the same mysql volume, means we could not change database directly. We have to import the database to both database. But it will fix the Bug . Wish for better solution
2017-01-12 18:47:11 +08:00
TJ
721e04370f Updated Crontab for Workspace (#538)
- Crontab now gets added to `/etc/cron.d`
- Base crontab now runs as the `laradock` user

This update resolves #459.
2017-01-10 16:34:55 -05:00
b569765f82 Add .env file for converting Windows paths to resolve issues with Docker Compose in Docker Toolbox (#531) 2017-01-07 11:35:59 -05:00
1c9596dd80 Merge pull request #523 from yaoshanliang/patch-1
Update README-zh.md
2017-01-03 09:43:25 +08:00
c59dea3745 add beanstalkd section and update the readme.md 2017-01-02 20:41:00 -05:00
iat
460b24f7ee Update README-zh.md 2017-01-03 09:27:45 +08:00
2fc3919598 Added service container for Selenium standalone with Chrome (#519)
* Added service container for Selenium standalone with Chrome
2017-01-01 10:22:01 -05:00
978dd425b9 Merge pull request #515 from cosmospham/master
fix syntax in xdebugPhpFpm
2016-12-27 14:36:01 +08:00
1b8726458f fix syntax in xdebugPhpFpm 2016-12-27 13:32:59 +07:00
3557f508d0 Merge pull request #513 from cristiancmello/add-rethinkdb
Add rethinkdb
2016-12-26 22:44:21 +08:00
1ce802f2cc Update docker-compose.yml 2016-12-26 12:38:50 -02:00
f0eda43906 Update README.md 2016-12-26 02:12:11 -02:00
343a950adc add rethink-db container 2016-12-26 01:59:58 -02:00
0218ef6b9f remove tabs. 2016-12-26 10:30:14 +08:00
33e8e91e49 Add Laravel Envoy (#510)
Add laravel envoy
2016-12-25 12:38:25 -05:00
e78b3ff799 Merge pull request #507 from WDZThorn/patch-1
Update Dockerfile
2016-12-24 07:00:02 -06:00
13bdfa119d Update Dockerfile
Replace tab with 4 spaces.
2016-12-23 13:35:45 +08:00
0eea7a639a Merge pull request #506 from Jono20201/patch/artisan-alias
Add `art` alias for `php artisan` - like homestead
2016-12-22 16:14:57 -05:00
f2db21f339 Add art alias for php artisan -- like homestead 2016-12-22 15:28:23 +00:00
b10108a9b5 disable installing the bcmath by default
disable installing the PHP bcmath extension by default on the php-fpm container
2016-12-21 14:20:40 -05:00
dd3e88fba9 Merge pull request #502 from laradock/support-bcmath-php-ext
Support bcmath php extension on php-fpm and workspace (base image 1.3)
2016-12-21 14:10:14 -05:00
860af556e2 Support bcmath php extention on php-fpm and workspace (base image 1.3)
Probably closes #453
2016-12-21 14:01:51 -05:00
586a21086f Merge pull request #501 from whoan/patch-1
Typo
2016-12-21 23:30:02 +08:00
d76f9e7722 Typo
elasticsearch-pkugins ->  elasticsearch-plugins
2016-12-21 10:16:32 -03:00
79ce978527 Merge pull request #500 from shukebeta/master
fix a important document typo
2016-12-21 09:20:20 +08:00
944639b248 fix a important typo
docker-compose build php => docker-compose build php-fpm
2016-12-21 08:09:41 +08:00
2728a99986 Merge pull request #496 from cosmospham/master
Fix PHP 5.6 Dockerfile syntax error
2016-12-20 02:29:59 -05:00
5bb515751a Fix PHP 5.6 Dockerfile syntax error
Syntax error: ";" unexpected
2016-12-20 13:20:53 +07:00
ea148943ed Merge pull request #495 from philtrep/related-projects
Added related projects to docs
2016-12-19 10:57:25 -05:00
97f882e4c7 Added related projects to docs 2016-12-19 10:55:44 -05:00
e9d3a838f1 Merge pull request #491 from laradock/bug
fix #490 duplication of key "volumes"
2016-12-16 17:23:01 +08:00
380eef5fd9 fix #490 duplication of key "volumes"
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-12-16 17:21:45 +08:00
047e7f7cc3 Merge pull request #489 from laradock/yarn
Support specific version of yarn.
2016-12-16 10:58:38 +08:00
b8142222e5 Support specific version of yarn.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-12-16 09:36:08 +08:00
b62d9bcb60 Merge pull request #488 from abtrumpet/add-soap
Added SOAP option to php-fpm install.
2016-12-15 17:59:40 -05:00
da6b950623 Added SOAP option to php-fpm install. 2016-12-15 12:13:27 -07:00
9d60dad222 Merge pull request #486 from dlnsk/mysql_strict_fix
Fix mysql strict NO_ZERO_DATE
2016-12-15 10:14:22 -05:00
6ffa36f188 Fix mysql strict NO_ZERO_DATE 2016-12-15 21:51:22 +07:00
aabe504c24 Add dokerfile with php 7.1 2016-12-15 15:13:00 +02:00
b401c517b2 Add dockerfile with php-fpm 7.1 2016-12-15 15:05:48 +02:00
f82d3b30b4 Merge pull request #483 from edmundluong/master
Add option to install Google V8 Javascript Engine PHP extension
2016-12-13 20:22:20 -05:00
8bacb129c6 Add option to install Google V8 Javascript Engine PHP extension 2016-12-13 20:00:48 -05:00
99fb1b4169 Merge pull request #474 from AliveCorpse/master
Fix load of mongodb library
2016-12-12 13:37:13 -05:00
6c9d5866b4 Merge pull request #477 from thebrubaker/patch-1
Update Readme.md
2016-12-12 08:58:27 +08:00
e8ef7ab8c9 Update Readme.md
Very small grammar updates.
2016-12-11 14:41:10 -08:00
5da5d5e29c Merge pull request #476 from jbaron-mx/master
Fix typos and missing commas in docs
2016-12-11 10:34:58 -05:00
19a2110b06 Fix typos and missing commas in docs 2016-12-10 22:22:40 -06:00
2fab33d4e4 Fix load of mongodb library
```
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/mongodb.so' - /usr/lib/php/20151012/mongodb.so: undefined symbol: php_json_serializable_ce in Unknown on line 0
```
2016-12-09 21:13:04 +02:00
4f819c238c Merge pull request #451 from Blaasvis/master
Update MySQL startup script
2016-11-28 22:53:32 -05:00
d8875cb588 Update startup 2016-11-28 21:25:52 +01:00
bb9f65eb2a Merge pull request #445 from danielabbatt/patch-1
Update README.md
2016-11-26 01:33:50 +08:00
d6508f3bb3 Update README.md
Fixed typo on "environment"
2016-11-25 16:59:13 +00:00
a3288462a8 Merge pull request #434 from dlnsk/Fixes
Fixes for nginx and mysql
2016-11-25 01:51:25 -05:00
225fb8cf4f Merge pull request #384 from LarryEitel/phpstorm-guide
phpstorm-debugging-guide
2016-11-18 16:03:33 -05:00
f67edee5e5 LaraDock-PHPStorm Debugging Guide
-	modified:   README.md
-	new file:   _guides/photos/KiTTY/Connection.png
-	new file:   _guides/photos/KiTTY/ConnectionData.png
-	new file:   _guides/photos/KiTTY/ConnectionSSH.png
-	new file:   _guides/photos/KiTTY/ConnectionSSHAuth.png
-	new file:   _guides/photos/KiTTY/Session.png
-	new file:   _guides/photos/KiTTY/Terminal.png
-	new file:   _guides/photos/KiTTY/TerminalKeyboard.png
-	new file:   _guides/photos/KiTTY/TerminalShell.png
-	new file:   _guides/photos/KiTTY/Window.png
-	new file:   _guides/photos/KiTTY/WindowAppearance.png
-	new file:   _guides/photos/PHPStorm/DebugRemoteOn.png
-	new file:   _guides/photos/PHPStorm/RemoteDebuggingSuccess.png
-	new file:   _guides/photos/PHPStorm/RemoteHost.png
-	new file:   _guides/photos/PHPStorm/RemoteTestDebuggingSuccess.png
-	new file:   _guides/photos/PHPStorm/RemoteWebDebuggingSuccess.png
-	new file:   _guides/photos/PHPStorm/Settings/BuildDeploymentConnection.png
-	new file:   _guides/photos/PHPStorm/Settings/BuildDeploymentConnectionMappings.png
-	new file:   _guides/photos/PHPStorm/Settings/BuildDeploymentDebugger.png
-	new file:   _guides/photos/PHPStorm/Settings/EditRunConfigurationRemoteExampleTestDebug.png
-	new file:   _guides/photos/PHPStorm/Settings/EditRunConfigurationRemoteWebDebug.png
-	new file:   _guides/photos/PHPStorm/Settings/LangsPHPDebug.png
-	new file:   _guides/photos/PHPStorm/Settings/LangsPHPInterpreters.png
-	new file:   _guides/photos/PHPStorm/Settings/LangsPHPPHPUnit.png
-	new file:   _guides/photos/PHPStorm/Settings/LangsPHPServers.png
-	new file:   _guides/photos/PHPStorm/Settings/WindowsFirewallAllowedApps.png
-	new file:   _guides/photos/PHPStorm/Settings/WindowsHyperVManager.png
-	new file:   _guides/photos/PHPStorm/Settings/hosts.png
-	new file:   _guides/photos/SimpleHostsEditor/AddHost_laravel.png
-	new file:   _guides/phpstorm.md
2016-11-18 14:12:10 -06:00
e5a8fb9c95 Merge pull request #437 from philtrep/fix-mysql-change-env
Added proper creation of mysql user, removal of default homestead user
2016-11-18 10:12:37 -05:00
4ef5db3713 Added proper creation of mysql user, removal of default homestead user 2016-11-17 16:37:51 -05:00
6bbd1fbe19 Use mysql 5.7 with disabled option ONLY_FULL_GROUP_BY (which causes many problem to people) 2016-11-16 16:16:52 +07:00
d703c82c46 Exclude sites configuration from image and just use volume 2016-11-16 15:58:42 +07:00
ecc4e06740 Merge pull request #432 from philtrep/port-already-allocated
Added 'port is already allocated' error to the docs debugging section
2016-11-15 09:20:37 -05:00
8b09149b15 Added 'port is already allocated' error to the docs debugging section 2016-11-14 20:48:59 -05:00
380178e6fa Merge pull request #429 from philtrep/mysql-bind-port
Added mysql change port bind documentation
2016-11-14 11:34:02 -05:00
be64b54606 Merge pull request #428 from laradock/appleboy-patch-1
fixed #420 remove phpmyadmin volume setting.
2016-11-14 11:32:55 -05:00
d89a944e22 Added nginx config for certbot 2016-11-14 11:29:44 -05:00
48f8f3c02d Added certbot serving in laravel conf 2016-11-14 11:27:39 -05:00
4030cc2f26 Added certbot container 2016-11-14 11:27:37 -05:00
cbeeb48aa1 Added mysql change port binnd documentation 2016-11-14 11:24:28 -05:00
7e2814168a fixed #420 remove phpmyadmin volume setting. 2016-11-14 23:45:52 +08:00
5e9ae56a7f Merge pull request #419 from laradock/yarn
Revert #418 and fix install yarn package management.
2016-11-10 09:32:19 -05:00
5d98e78dba Revert #418 and fix install yarn package management.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-11-10 10:23:49 +08:00
c5d1116333 Merge pull request #418 from moxar/yarn
Fix a bug that prevents yarn from installing #415
2016-11-09 15:17:42 -05:00
5594c53e03 Fix bug in PATH 2016-11-09 17:55:35 +01:00
44045f85e6 Fix a bug that prevents yarn from installing 2016-11-09 16:14:49 +01:00
fc31a2415c Merge pull request #414 from joaojoyce/postgis-support
Postgis Support
2016-11-08 09:45:31 -05:00
a42f62c626 Postgis 2016-11-08 13:17:23 +00:00
3e4a5edc64 Merge pull request #407 from michaeljhopkins/patch-2
Add solution to mysql connection issues
2016-11-05 18:52:53 -04:00
9289c1b6c0 Add solution to mysql connection issues
Adding in a more "docker conventional" solution to the mysql connection issues
2016-11-05 06:42:19 -06:00
3f157a3277 Merge pull request #403 from darthrevan13/patch-1
Fix for mariadb local path
2016-11-03 23:02:16 +08:00
f732bb283b update the workspace container version 2016-11-03 09:50:21 -04:00
ca4aeada08 add missing step to the docs 2016-11-03 09:50:10 -04:00
3d54d68aa1 Fix for mariadb local path
When running docker-compose with mariadb the following message will appear:

ERROR: for mariadb  Cannot create container for service mariadb: Invalid volume spec "mariadb": Invalid volume destination path: 'mariadb' mount path must be absolute.
ERROR: Encountered errors while bringing up the project.

This commit fixes the issue.
2016-11-03 15:45:59 +02:00
a0153810c6 remove laradock logo on zh document.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-11-02 13:43:45 +08:00
4fe15ad5cf update docs 2016-11-01 10:07:21 -04:00
146f8ea6f4 rename volumes_source to applications 2016-11-01 10:05:10 -04:00
9ab6d8fa15 remove volumes container 2016-11-01 10:03:47 -04:00
f6d9ac6853 Merge pull request #401 from dsampaolo/fix-phpunit-path-missing
fix #395 adds phpunit path to non-root user's .bashrc
2016-11-01 15:51:10 +08:00
470994fc23 fix #395 adds phpunit path to non-root user's .bashrc 2016-11-01 07:19:58 +01:00
1b05dfd1e2 replace var/www/laravel with var/www 2016-10-31 21:45:50 -04:00
03bba8d2de Merge pull request #400 from LaraDock/appleboy-patch-1
fix phpunit path for multiple project.
2016-10-31 21:32:33 -04:00
b6c7746a0d fix workdir path.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-11-01 09:23:40 +08:00
e7baf3cfc3 fix phpunit path 2016-11-01 09:00:19 +08:00
f630970151 remove ./databases:/docker-entrypoint-initdb.d until it works 2016-10-31 20:46:02 -04:00
3070eac7b7 Merge pull request #399 from LaraDock/multiple-projects
Multiple projects
2016-10-31 20:32:44 -04:00
66723c0278 update the doc to support multiple projects 2016-10-31 20:30:34 -04:00
dbee864d44 rename laravel.conf to default and add sample conf 2016-10-31 19:50:30 -04:00
739cc31f4c change app mapping directory from www/laravel to www
also add sample to show facilitate setup for multiple sites
2016-10-31 19:49:48 -04:00
28130c5907 delete site_a and site_b nginx config samples 2016-10-31 19:31:15 -04:00
658d4e7532 add root access section to mysql docs 2016-10-31 19:30:12 -04:00
5da4058613 delete the drupal sample nginx config file 2016-10-31 19:28:47 -04:00
2ed09f42ca change workspace and php-fpm work directories
making them compatible with multiple projects
2016-10-31 19:28:25 -04:00
6ee790c26d Add support for Codeigniter 2016-10-31 12:21:01 -04:00
a1ade52cd6 Merge pull request #369 from LaraDock/patch
fixed #363 PHP_IDE_CONFIG variable.
2016-10-31 08:08:48 -04:00
05f4f371fe Merge pull request #396 from LaraDock/appleboy-patch-1
Update caddy version and fix format.
2016-10-31 08:05:45 -04:00
33e99ca9cf update format. 2016-10-31 14:58:39 +08:00
e913fd941e Update caddy version and fix format. 2016-10-31 14:36:44 +08:00
5286fd654a remove redundant spaces 2016-10-31 14:33:57 +08:00
499342ea39 Merge pull request #391 from hopewise/master
clarified where to run xdebugPhpFpm command
2016-10-26 19:59:09 -04:00
17442db357 clarified where to run xdebugPhpFpm command
As users might run the command `xdebugPhpFpm`  in the php-fpm container rather than from outside.
2016-10-26 15:21:18 +03:00
4f7b0ec0c3 Merge pull request #390 from LaraDock/elasticsearch
Add install elasticsearch plugin section.
2016-10-26 11:16:00 +08:00
a0981aa836 Add install elasticsearch plugin section.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-26 09:40:53 +08:00
6a3137fc27 Merge pull request #388 from philtrep/ssh-documentation
Added Documentation for using ssh on workspace
2016-10-24 16:47:59 -04:00
4d5e3e5e4a Added Documentation for using ssh on workspace 2016-10-24 16:11:52 -04:00
aa7c52c42e Merge pull request #386 from dilone/master
update Workspace port to 2222
2016-10-24 14:44:08 -04:00
6eed8199df update port to 2222 - no conflict linux 2016-10-24 03:58:03 -04:00
c02f17417f Merge pull request #375 from calebfavor/apache-php-double-quote-fix
Removing double quotes for apache php fpm configuration.
2016-10-17 19:34:35 -04:00
91bae76527 No longer using env variable to set the apache php socket config variable. 2016-10-17 16:05:35 -07:00
891911ddc3 Removing double quotes for apache php fpm configuration. 2016-10-17 14:17:23 -07:00
89fac4bdbe Merge pull request #371 from imamassi/master
Quick steps to resolve connection refused error
2016-10-16 22:59:19 -04:00
22a3bbc0b0 Quick steps to resolve connection refused error 2016-10-16 07:51:49 +07:00
89a21ccf1b fixed #363 PHP_IDE_CONFIG variable.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-15 08:50:17 +08:00
15892dba51 Merge pull request #367 from aletundo/Fix_mysql_dockerfile
Fixed mysql tag dockerfile
2016-10-14 16:12:19 -04:00
1fa1dc9a1c Fixed mysql tag dockerfile
Signed-off-by: Alessandro Tundo <alessandrotundo94@gmail.com>
2016-10-14 21:04:24 +02:00
c4cd3ed2ac Merge pull request #365 from geocine/nginx-charset-utf8
use utf8 charset on nginx
2016-10-14 14:31:56 -04:00
ffe45fed50 use utf8 charset on nginx 2016-10-15 01:01:59 +08:00
bd1f6ebd8a Merge pull request #364 from LaraDock/downgrade-mysql
downgrade MySQL to 5.6 (stable)
2016-10-14 12:28:42 -04:00
f35e5501db downgrade MySQL to 5.6 (stable) 2016-10-14 12:26:11 -04:00
8d1ba2e802 Merge pull request #361 from LaraDock/yarn
Support Yarn package manager for JavaScript
2016-10-13 20:04:19 -05:00
c9415b12c0 Add YARN flag in production mode..
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-14 09:01:50 +08:00
8544de7ea1 update readme.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-13 14:48:00 +08:00
62e0f0443c Support Yarn MANAGEMENT tool.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-13 12:06:30 +08:00
a2847316c4 Merge pull request #358 from appleboy/patch-22
convert tab to spaces.
2016-10-11 12:49:43 -04:00
9d212afc8c convert tab to spaces.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-10-11 20:17:21 +08:00
89a77bee24 Merge pull request #354 from philtrep/change-timezone
Added timezone arguments to workspace build
2016-10-10 10:44:30 -04:00
fb26035e5c Added timezone arguments to workspace build 2016-10-10 09:44:25 -04:00
c7a76dd683 add LaraDock v4 Video link :D 2016-10-10 08:57:52 -04:00
781f5ff972 add missing info to the readme 2016-10-10 07:32:01 -04:00
5c0e55204e add folder structures to the README 2016-10-10 04:30:15 -04:00
dd3ab5ade1 add warning to the readme asking people to rebuild their containers 2016-10-10 03:50:44 -04:00
2e5d2a743c disable xdebug remote by default 2016-10-09 20:47:08 -04:00
5635b47c6f refactor the workspace docker file 2016-10-09 20:27:03 -04:00
56f422ade0 replace true parameters by false as the default 2016-10-09 20:05:33 -04:00
58d6d8e745 Merge pull request #352 from LaraDock/revert-db-ports
Revert ports fowarding for MySQL and MariaDB
2016-10-09 16:52:29 -04:00
7ecb712e76 Revert ports fowarding for MySQL and MariaDB
Include production docker compose file
2016-10-09 16:51:18 -04:00
3abb6152c8 Merge pull request #351 from philtrep/readme-mysql-host-access
Added instructions for forward the MySQL/MariaDB port to README
2016-10-09 13:57:57 -04:00
5221544b98 Added instructions for forward the MySQL/MariaDB port to README 2016-10-09 13:52:33 -04:00
2396b4799c Merge pull request #350 from geocine/cannot-open-nvm-sh-fix
fix for issue #347
2016-10-09 13:12:19 -04:00
08fa1bc95c fix for issue #347 2016-10-10 01:06:10 +08:00
2415566230 general updates to the readme 2016-10-09 02:26:50 -04:00
5fea003ffe update installation. 2016-10-09 11:19:50 +08:00
e9af2a4fb3 Merge branch 'master' of https://github.com/LaraDock/laradock
* 'master' of https://github.com/LaraDock/laradock:
  Fix typo in README: Giude -> Guide
  Added laravel cronjob
  Added cron files copying to workspace crontab
  Remove port fowarding for MySQL and MariaDB
  Added NVM binaries in root bashrc
2016-10-06 17:57:18 -04:00
d0dea21cc5 update readme credits section 2016-10-06 17:55:41 -04:00
942d1cfbed Merge pull request #340 from philtrep/workspace-cron
Simple cron jobs
2016-10-03 23:24:31 -04:00
57ec81ed52 Merge pull request #341 from rogeriopradoj/patch-1
Fix typo in README: Giude -> Guide
2016-10-03 23:23:33 -04:00
8d62070773 Fix typo in README: Giude -> Guide 2016-10-03 23:51:48 -03:00
8933b827b3 Added laravel cronjob 2016-10-03 20:29:45 -04:00
6f435584a9 Added cron files copying to workspace crontab 2016-10-03 20:21:28 -04:00
a1fd2aabcd Merge pull request #339 from philtrep/expose-database-ports
Remove port fowarding for MySQL and MariaDB
2016-10-03 17:01:37 -04:00
3e2b413094 Merge pull request #338 from philtrep/master
Added NVM binaries in root bashrc
2016-10-03 15:43:43 -04:00
ec3ebb9701 Remove port fowarding for MySQL and MariaDB 2016-10-03 13:25:34 -04:00
cfc48b3791 Added NVM binaries in root bashrc 2016-10-03 13:10:31 -04:00
3725ad4c46 edit readme: adding Admins list 2016-09-27 19:10:20 -04:00
a0b75bac46 Merge pull request #328 from lukasoppermann/patch-1
Fixing typo
2016-09-26 21:11:46 -04:00
489740848f Fixing typo
Software has no different plural form.
2016-09-24 08:57:47 +02:00
b2aa38877b Merge pull request #315 from mjcriswell/my-fix-branch
Windows Powershell command to enter container
2016-09-19 12:43:38 -04:00
51703f00fc Windows Powershell command to enter container
Allows a Windows Powershell user to enter a running container to avoid the following error message.
Interactive mode is not yet supported on Windows.
Please pass the -d flag when using `docker-compose exec`.
2016-09-16 13:51:19 -07:00
f1716a2767 update readme, add more awesome contributors 2016-09-15 10:48:20 -04:00
5640bd963d Activating OpCache
Closes #307
2016-09-15 10:47:58 -04:00
8bb69beb84 t fetch Merge branch 'master' of https://github.com/LaraDock/laradock
* 'master' of https://github.com/LaraDock/laradock:
  Fixes #305
  add mysql custom configuration file.
  fix php warning "Unable to load dynamic library '/usr/lib/php/20151012/aerospike.so'" when aerospike set not install at workspace
  add build options MAX_ALLOWED_PACKET to mysql
  update readme for ElasticSearch.
  Support ElasticSearch Container.
  Add vue-cli on workspace npm global installers
  modify words in Chinese
  Add aerospike extension installation on phpfpm-56 as well
2016-09-15 10:24:51 -04:00
76afeedc33 Merge pull request #308 from francislavoie/patch-3
Fixes #305
2016-09-15 10:16:01 -04:00
16b6223ba9 Fixes #305 2016-09-13 21:40:03 -04:00
1b88c2c9d8 Merge pull request #303 from appleboy/patch-20
Revert #297 add mysql custom configuration file.
2016-09-11 03:14:18 -04:00
b254d4a9c9 add mysql custom configuration file.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-09-11 08:39:25 +08:00
2ed475f1ef Merge pull request #300 from lialosiu/master
fix php warning in Workspace: "Unable to load dynamic library aerospike"
2016-09-10 17:48:24 -04:00
3a5100097a fix php warning "Unable to load dynamic library '/usr/lib/php/20151012/aerospike.so'" when aerospike set not install at workspace 2016-09-10 16:53:15 +08:00
15b3fe65c1 Merge pull request #297 from lialosiu/master
add build options MAX_ALLOWED_PACKET to mysql
2016-09-09 13:04:49 -04:00
da6face95e add build options MAX_ALLOWED_PACKET to mysql 2016-09-09 10:21:33 +08:00
a31cef6eb1 Merge pull request #294 from appleboy/patch-11
Support ElasticSearch Container
2016-09-07 09:42:09 -04:00
a005281f4f Merge pull request #291 from luciano-jr/feature/vue-cli-workspace
Feature/vue cli workspace
2016-09-07 09:42:03 -04:00
907c694834 update readme for ElasticSearch.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-09-07 16:44:33 +08:00
8c392e94f2 Support ElasticSearch Container.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-09-07 15:18:54 +08:00
d538274a0f Add vue-cli on workspace npm global installers 2016-09-06 23:43:03 +01:00
beeea8dc0e Merge pull request #12 from LaraDock/master
Update fork
2016-09-06 22:14:21 +01:00
53b0507eb2 Merge pull request #289 from Easter1021/patch-2
modify words in Chinese
2016-09-06 07:24:46 -04:00
a1a5b3d49f modify words in Chinese
let words look like smooth and replace wrong word in Chinese.
2016-09-06 17:46:14 +08:00
4f5dfbcb13 Merge pull request #287 from luciano-jr/bugfix/php-fpm5.6-aerospike
Bugfix/php fpm5.6 aerospike
2016-09-05 21:58:09 -04:00
f275f88396 Merge pull request #11 from luciano-jr/bugfix/php-fpm5.6-aerospike
Add aerospike extension installation on phpfpm-56 as well
2016-09-04 14:55:12 +01:00
6cc58de67e Add aerospike extension installation on phpfpm-56 as well 2016-09-04 14:50:03 +01:00
b2da8aeb3f Merge pull request #10 from LaraDock/master
Update fork
2016-09-04 14:36:12 +01:00
1345164ac3 refactor RabbitMQ Dockerfile 2016-09-04 06:33:08 -04:00
a9ecdd0008 Merge pull request #284 from appleboy/patch-1
Update postgres share volume path
2016-09-04 05:26:40 -04:00
1dab0c48d8 Merge pull request #283 from appleboy/patch-10
Add pgAdmin container
2016-09-04 05:26:10 -04:00
91f1d4347c Merge pull request #278 from LarryEitel/remove-port-22-from-docker-compose-php-fpm
remove port 22 from php-fpm because of conflict
2016-09-04 05:22:30 -04:00
4013553dbb Update postgres share volume path 2016-09-04 09:04:18 +08:00
07e4bd174e Add pgAdmin doc.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-09-03 21:32:02 +08:00
7999399e9a Add pgAdmin container.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-09-03 21:24:36 +08:00
d684cb4742 remove port 22 from php-fpm because of conflict 2016-09-02 10:38:15 -06:00
3c27c14b99 Merge pull request #9 from LaraDock/master
Update fork
2016-09-02 10:45:20 +01:00
3473b788cf Merge pull request #275 from luciano-jr/feature/aerospike-cache
Feature/aerospike cache
2016-09-01 23:53:36 +03:00
1a5c7a7b3f Update documentation 2016-09-01 15:24:39 +01:00
616e9c7d92 Merge pull request #8 from luciano-jr/feature/aerospike-cache
Feature/aerospike cache
2016-09-01 13:24:30 +01:00
a3039958e3 Fix conflicts 2016-09-01 13:23:40 +01:00
b01bae59fc Fix volumes aerospike section 2016-09-01 13:21:21 +01:00
92dc3be3b1 Remove duplicate argument on aerospike section 2016-09-01 13:05:53 +01:00
650f6a89c6 Remove own namespace from conf file 2016-09-01 12:58:10 +01:00
041d134f69 Merge pull request #7 from LaraDock/master
Just update the fork
2016-09-01 12:56:35 +01:00
79ff092105 Merge pull request #273 from LarryEitel/fix-xdebugPhpFpm
fix-xdebugPhpFpm
2016-09-01 11:47:33 +03:00
ffce0f93d5 Fix: ERROR: expr: syntax error #272 2016-08-31 05:52:03 -06:00
a2d154c30a Merge branch 'master' of github.com:LarryEitel/laradock 2016-08-31 05:46:36 -06:00
59a22aedac Merge pull request #270 from LarryEitel/add_apt-get_update_to_workspace_install_xdebug_block
fix workspace xdebug install bug - need to add apt-get update.
2016-08-30 20:30:37 +03:00
b42ad1ae7e fix workspace xdebug install bug - need to add apt-get update. 2016-08-30 11:26:54 -06:00
07d6ec85ca Merge branch 'master' of github.com:LarryEitel/laradock 2016-08-30 08:40:28 -06:00
adfb559521 Merge pull request #269 from LarryEitel/expose-port-22-and-add-insecure_id_rsa_ppk
expose-port-22-and-add-insecure_id_rsa_ppk
2016-08-30 17:29:51 +03:00
05e0e9c817 Merge pull request #264 from LarryEitel/expose-port-22-in-workspace-add-insecure_id_rsa_ppk
expose-port-22-in-workspace-add-insecure_id_rsa_ppk
2016-08-30 11:06:16 +03:00
ab53db1897 Merge pull request #268 from appleboy/patch-10
fix #267 phpmyadmin is not working on linux.
2016-08-30 11:05:08 +03:00
6dcb174012 Merge pull request #266 from bktz/master
Added support for RabbitMQ
2016-08-30 11:03:57 +03:00
38eeae8791 Merge pull request #265 from computerfr33k/remove-env-commands-from-php-fpm
Remove env commands from php fpm
2016-08-30 11:03:27 +03:00
de914d106f Merge pull request #262 from computerfr33k/260-reduce-data-only-volume-size
use docker image which only supplies true & echo binaries.
2016-08-30 11:01:33 +03:00
6c71d6d84f Merge pull request #261 from appleboy/patch-4
support specific node version
2016-08-30 10:59:50 +03:00
7b2ff6dab8 fix #267 phpmyadmin is not working on linux.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-30 13:16:18 +08:00
1e5d604470 Added support for RabbitMQ 2016-08-28 18:12:55 +10:00
314e43bb79 Update Dockerfile-56 2016-08-28 00:04:52 -05:00
ea047e2587 remove unnecessary env commands
These environment variables are not needed since they are only being used at build time and we are already specifying them using the ARG command, no need to specify it twice since it increases build time and size.
2016-08-28 00:04:19 -05:00
d441427852 Expose port 22 for workspace ssh. Add private key for PHPStorm Windows users. 2016-08-27 17:22:36 -06:00
227c8da17c Expose port 22 for workspace ssh. Add private key for PHPStorm Windows users. 2016-08-27 17:00:01 -06:00
14b97caa57 Merge branch 'master' of github.com:LarryEitel/laradock 2016-08-27 14:52:28 -06:00
6ba76da709 use docker image which only supplies true & echo binaries. 2016-08-27 13:18:13 -05:00
294fe31a80 update nvm version.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-27 22:54:59 +08:00
78be0b577e support specific node version
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-27 19:38:44 +08:00
5a980b1c97 add debugging steps for thr 404 windows error 2016-08-27 10:00:09 +03:00
3ad474a2d9 move contributing to the root 2016-08-27 09:06:22 +03:00
0ad1e58bf0 Merge branch 'master' of https://github.com/LaraDock/laradock
* 'master' of https://github.com/LaraDock/laradock:
  fix caddy Dockerfile from previous commit.
  caddy log to file. enable gzip compression.
  update caddy to v0.9.1
  Laravel 5.3 is published officially
  Create README-zh.md
2016-08-27 08:57:15 +03:00
0cf12c7383 update the readme 2016-08-27 08:57:03 +03:00
4e0af7e0cb Merge pull request #259 from computerfr33k/master
Update caddy server and log to file
2016-08-27 08:54:35 +03:00
d6b091df96 Merge pull request #258 from helsont/patch-1
Laravel 5.3 is published officially
2016-08-27 08:53:53 +03:00
506fe598cd Merge pull request #257 from zhqagp/master
Create README-zh.md
2016-08-27 08:46:16 +03:00
b252558560 fix caddy Dockerfile from previous commit. 2016-08-26 14:01:48 -05:00
29d714a849 caddy log to file. enable gzip compression. 2016-08-26 13:26:22 -05:00
f9fd391879 update caddy to v0.9.1 2016-08-26 13:25:31 -05:00
740b4647a3 Laravel 5.3 is published officially
No need for development branch switch.

Ran into the same error posted by this guy here https://laracasts.com/discuss/channels/laravel/laravel-53-cant-do-php-artisan-optimize.

I didn't switch to the development branch and the setup worked perfectly.
2016-08-26 11:29:32 -04:00
f8d3c58d6a Create README-zh.md
中文翻译版README
2016-08-26 12:38:51 +08:00
509cb9ac2e replace the phpmyadmin guide in the readme 2016-08-25 00:19:58 +03:00
f2aea63d64 Merge pull request #250 from appleboy/patch-3
add phpMyAdmin document.
2016-08-25 00:10:52 +03:00
9aa8813a3d Add aerospike.conf 2016-08-24 16:29:29 +01:00
58af86a582 Merge pull request #6 from LaraDock/master
Update fork
2016-08-24 12:36:52 +01:00
12ba6bbbae add phpMyAdmin document.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-24 14:25:42 +08:00
9fb50b2c6b fix phpmyadmin port. closes #247 2016-08-24 00:43:11 +03:00
df1a019f75 Merge pull request #246 from appleboy/patch-2
update readme for phpMyAdmin.
2016-08-24 00:38:21 +03:00
c68f70d2a7 fix typo
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-23 16:56:23 +08:00
002b147b23 update readme for phpMyAdmin.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-23 16:56:14 +08:00
314034255a Merge pull request #245 from appleboy/patch-1
Support phpMyAdmin container.
2016-08-22 22:32:52 +03:00
3c8861d1d2 remove empty data folder for mariadb.
ref:
d969a465ee/10.1/Dockerfile (L83)

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-22 11:02:21 +08:00
2d51548879 support phpmyadmin container.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-08-22 11:01:34 +08:00
4aa3902f32 Merge pull request #242 from LarryEitel/install-and-startup-workspace-ssh
Install and start workspace ssh
2016-08-22 03:30:17 +03:00
1afad7f14c Add configuration to install aerospike php extension 2016-08-20 19:05:38 +01:00
00d48fff51 Merge pull request #5 from LaraDock/master
Just update
2016-08-20 12:32:32 +01:00
9bd70aadc8 Added aerospike cache service 2016-08-20 12:28:45 +01:00
fb049ef300 create guides folder and clean the readme 2016-08-19 03:24:02 +03:00
e75da747a9 general clean up 2016-08-19 03:05:36 +03:00
dd48592d8b update the xdebug.ini usage 2016-08-19 03:05:02 +03:00
d57a0c3888 rename and refactor xdebug config files 2016-08-19 03:03:45 +03:00
7a13e4a343 Fix variable name 2016-08-17 19:53:01 -06:00
4e7e003e87 ssh keys 2016-08-17 19:24:00 -06:00
208b2e7c0a ReTweak README re xdebug 2016-08-17 07:56:38 -06:00
9611fdb58f Indent - Start/Stop xDebug in TOC 2016-08-17 07:56:38 -06:00
9a77c8e276 Merge branch 'multi-sites' of https://github.com/tjb328/laradock into multiple-projects
* 'multi-sites' of https://github.com/tjb328/laradock:
  Fix typo
  Allow for config of crush and opcache in the main docker file
  This is a better Drupal nginx config. Built from a combination of contributions from here: https://groups.drupal.org/node/305633 https://www.nginx.com/resources/wiki/start/topics/recipes/drupal/
  Add Drush and Opcache to laradock because they are needed for drupal development.
  Add drupal 8 example to make laradock framework agnostic.
2016-08-17 01:53:55 +03:00
080cc2a88a Merge branch 'master' of https://github.com/LaraDock/laradock into multiple-projects
* 'master' of https://github.com/LaraDock/laradock:
  ReTweak README re xdebug
  Indent - Start/Stop xDebug in TOC
2016-08-17 01:52:55 +03:00
b648f1ca58 Fix typo 2016-08-16 17:53:15 -04:00
cfc81fca64 Allow for config of crush and opcache in the main docker file 2016-08-16 17:51:41 -04:00
928451ae88 This is a better Drupal nginx config. Built from a combination of contributions from here:
https://groups.drupal.org/node/305633
https://www.nginx.com/resources/wiki/start/topics/recipes/drupal/
2016-08-16 16:32:59 -04:00
95ef5e1e70 Add Drush and Opcache to laradock because they are needed for drupal development. 2016-08-16 15:13:58 -04:00
c324114b7a Add drupal 8 example to make laradock framework agnostic. 2016-08-16 15:08:27 -04:00
5ee1fdd71b Merge pull request #236 from LarryEitel/re-tweak-readme-xdebug
ReTweak README re xdebug
2016-08-16 18:43:46 +03:00
7680e29bc5 ReTweak README re xdebug 2016-08-16 09:23:56 -06:00
b42f24c50d Merge pull request #235 from LarryEitel/tweak-readme-xdebug
Indent - Start/Stop xDebug in TOC
2016-08-16 18:05:18 +03:00
1c22c009e7 Indent - Start/Stop xDebug in TOC 2016-08-16 08:55:29 -06:00
380c7bd1ec Merge branch 'multi-sites-branch' of https://github.com/LarryEitel/laradock into multi-sites
* 'multi-sites-branch' of https://github.com/LarryEitel/laradock:
  Proof of concept - LaraDock hosting multiple sites
2016-08-16 15:56:19 +03:00
e8562272b0 update the readme: update contributing giude 2016-08-16 15:47:42 +03:00
1614f0fb2d update the readme: add production section (with DO) 2016-08-16 15:38:01 +03:00
5232d6a84f update the readme: add xDebug docs 2016-08-16 15:28:30 +03:00
391602a811 Merge branch 'LarryEitel-xdebugPhpFpm'
* LarryEitel-xdebugPhpFpm:
  Provided a way to Stop/Start php-fpm xdebug via bash script.
2016-08-16 15:16:01 +03:00
b4760ac703 Merge branch 'xdebugPhpFpm' of https://github.com/LarryEitel/laradock into LarryEitel-xdebugPhpFpm
* 'xdebugPhpFpm' of https://github.com/LarryEitel/laradock:
  Provided a way to Stop/Start php-fpm xdebug via bash script.
2016-08-16 15:13:42 +03:00
aabb0cded8 upgrade php-fpm base image 2016-08-16 15:12:52 +03:00
d3a6116a42 move PHP Memcached from the base image to LaraDock 2016-08-16 15:12:35 +03:00
eb81dfc1be Merge pull request #232 from tianissimo/dev-memcached-ext
Added PHP Memcached extension installation for PHP 5.6
2016-08-16 13:33:46 +03:00
a6e04aa659 Added PHP Memcached extension installation for PHP 5.6 2016-08-16 16:31:52 +07:00
93504a714d Proof of concept - LaraDock hosting multiple sites 2016-08-15 15:14:05 -06:00
d8a4537efb Provided a way to Stop/Start php-fpm xdebug via bash script. 2016-08-15 09:28:32 -06:00
28b4077a49 Merge pull request #229 from Kauhat/patch-1
Remove hard-coded extensions from laravel.ini
2016-08-15 17:57:30 +03:00
651430c7a9 Update Dockerfile-56 2016-08-15 15:01:47 +01:00
3be9dee1c7 Update Dockerfile-70 2016-08-15 15:00:37 +01:00
8ef37a71fb Remove hard-coded extensions from laravel.ini 2016-08-15 14:57:51 +01:00
5210ca7ccf Merge pull request #4 from LaraDock/master
Just update
2016-08-15 07:34:40 +01:00
a30bf83269 Merge pull request #228 from lialosiu/master
add options INSTALL_ZIP_ARCHIVE to php-fpm
2016-08-14 15:46:52 +03:00
1fdf800988 add options INSTALL_ZIP_ARCHIVE to php-fpm 2016-08-14 15:53:08 +08:00
82cbad75d4 Update the reamde: list more awesome contributors 2016-08-11 21:24:20 +03:00
6111ca5ff7 Merge pull request #222 from tianissimo/dev-workspace-node-fix
Fixed nvm/node installation not working.
2016-08-11 21:14:39 +03:00
b393996d44 Fixed nvm/node installation not working. 2016-08-11 18:03:27 +07:00
f12028576c upgrade the workspace base image to 1.1 2016-08-10 22:25:41 +03:00
27d3525469 Merge pull request #203 from davidavz/patch-1
Update README.md
2016-08-05 13:04:00 +03:00
8b6fdfed76 Merge pull request #208 from davidavz/patch-3
Update README.md
2016-08-05 13:03:47 +03:00
3c427d20c0 Merge pull request #204 from davidavz/patch-2
Update README.md
2016-08-05 13:03:35 +03:00
57c003722e Update README.md 2016-08-04 23:10:27 +02:00
ab4c44a434 Update README.md 2016-08-03 22:50:45 +02:00
0f7969c999 Update README.md 2016-08-03 22:44:26 +02:00
aa8f7c48a5 upgrade the php-fpm base images 2016-08-03 22:28:33 +03:00
533925522c add CONTRIBUTING.md 2016-08-03 13:08:00 +03:00
48a6c06ebb update readme: better overview 2016-07-29 18:39:24 +03:00
537f2c5033 Merge pull request #198 from computerfr33k/master
minimize user switching in workspace build.
2016-07-29 18:24:03 +03:00
f36f9ef6ec minimize user switching in build. 2016-07-29 10:16:06 -05:00
605c191717 add more info for upgrading docker in the reamdme 2016-07-29 14:53:25 +03:00
f2615b9ff2 Merge pull request #194 from Kauhat/fix-composer
Fix user permissions issue when installing Composer in the workspace container
2016-07-29 14:01:48 +03:00
04174b476c Merge pull request #196 from LaraDock/LaraDock-Native
LaraDock Native (For Mac/Windows)
2016-07-29 13:55:23 +03:00
afac432b2f upgrade readme to docker native 2016-07-29 13:52:16 +03:00
2f156edafd Fix syntax error in the beanstalkd-console dockerfile 2016-07-29 13:19:44 +03:00
42d551dead Fix user permissions issue when installing Composer in the workspace
container
2016-07-29 09:59:38 +01:00
b7d38ef7dd parameter data in the path 2016-07-28 11:49:42 +02:00
c5ac8d1ada add apache to the readme 2016-07-28 08:08:41 +03:00
2f20216d8f Merge pull request #189 from computerfr33k/apache2
Add Apache2 Container
2016-07-28 07:38:41 +03:00
5e0e120950 add apache2 container. 2016-07-27 19:35:58 -05:00
33b701afdc Merge pull request #188 from computerfr33k/workspace-user
Use workspace as non-root user
2016-07-27 12:56:19 +03:00
e0c18374df Merge branch 'workspace-user' of github.com:computerfr33k/laradock into workspace-user 2016-07-27 02:56:59 -05:00
20adc9ca13 accidentally forgot to set INSTALL_NODE back to false. 2016-07-27 02:56:48 -05:00
dd9855d411 Update README.md 2016-07-27 02:49:43 -05:00
17e252a436 add non-root user for workspace container. 2016-07-27 02:43:38 -05:00
dd06f1e1a0 Merge branch 'master' of https://github.com/LaraDock/laradock
* 'master' of https://github.com/LaraDock/laradock:
2016-07-27 05:45:10 +03:00
2ba3060564 update the readme: switch to php 5.5 2016-07-27 05:44:36 +03:00
5612874b78 Merge pull request #187 from LaraDock/faster-builds
Faster builds
2016-07-27 05:30:30 +03:00
10af217349 update workspace build version 2016-07-27 04:39:54 +03:00
e65f0dceba add docker build version to the base image 2016-07-27 04:34:45 +03:00
c792a780ee use laradock php-fpm base images
to speed up the build time
2016-07-27 04:22:31 +03:00
2d1c1586f5 use laradock workspace base image
to speed up the build time
2016-07-27 04:22:20 +03:00
5bb3d3b6a8 rename PHP-FPM Dockerfile5 to Dockerfile56 2016-07-27 03:57:32 +03:00
b1ec5b8d6f Merge pull request #186 from computerfr33k/caddy
Update Caddyfile
2016-07-27 02:09:59 +03:00
6e07061deb Merge pull request #184 from computerfr33k/nginx-alpine
Nginx alpine image
2016-07-27 02:09:00 +03:00
97057f259c Update Caddyfile
fixes 404 errors for files in the public folder, such as css or js files.
2016-07-26 17:16:25 -05:00
e4f6cec536 fix nginx to actually log to files. 2016-07-26 12:53:26 -05:00
e6cf30e7ba re-added www-data user for nginx. log to stdout. 2016-07-26 12:41:52 -05:00
ed8e241007 use nginx:alpine as base. 2016-07-26 11:19:31 -05:00
c60cb9ab40 return apt-get update to HHVM 2016-07-25 07:47:17 +03:00
d58ef06907 refactoring some containers 2016-07-25 07:31:31 +03:00
462b5685eb add some comments sections to the php dockerfiles 2016-07-25 07:27:15 +03:00
11f7cfe729 fix an error missed COMPOSER_GLOBAL_INSTALL 2016-07-25 07:15:26 +03:00
d5ffc04034 remove data and application containers from the readme 2016-07-25 07:05:24 +03:00
062b7466f6 add composer.json to install global composer dependencies 2016-07-25 07:00:50 +03:00
e1dbb972f1 make Mongo, xDebug, Node, and prestissimo Installation Optional
on the Workspace and PHP-FPM Containers

+ general refactoring
2016-07-25 06:25:38 +03:00
419434020c merge back apt-get update and install to keep them on the same layer 2016-07-25 04:05:07 +03:00
2a02ed73e3 Refactor the workspace container 2016-07-25 02:48:38 +03:00
ca378ac734 add libz-dev library to php containers 2016-07-25 02:17:36 +03:00
67f92de4f0 Refactor the PHP 5 Dockerfile 2016-07-25 02:14:19 +03:00
c8d4461771 Refactor the PHP 7 Dockerfile 2016-07-25 01:30:19 +03:00
23b0906cd7 delete the Dockerfile-55 file and rename Dockerfile-56 to Dockerfile-5
Since 5.5 and 5.6 dockerfiles are identical execept the base image php version.
Will let the users switch the php 5.6 and 5.5 version from the Dockerfile-5 by changing one char
in the first line. Removing this duplication will make contribution and maintance easier and faster.
2016-07-24 23:25:31 +03:00
28a2d8e072 delete the .env file
making the central editing place is the docker-compose.yml file
2016-07-24 23:11:33 +03:00
f97f0b0d11 update readme: include hhvm and new logo 2016-07-24 07:39:25 +03:00
05e1dd4c13 Merge pull request #174 from orette/add-hhvm
Add hhvm
2016-07-24 07:27:40 +03:00
fc78ab7764 Merge remote-tracking branch 'upstream/master' into add-hhvm 2016-07-24 03:05:09 +00:00
ef8579987f Added HHVM container and used environment variable for switching 2016-07-24 02:49:57 +00:00
4dda3b969e add gitter link to the readme 2016-07-23 19:53:16 +03:00
4d2452101a add more awesome people to the contributors list 2016-07-22 00:36:26 +03:00
233cfb5b07 Merge pull request #169 from orette/create-code-standards-file
Added dot file to maintain consistent coding styles
2016-07-22 00:27:37 +03:00
63b9ec2bd8 Added dot file to maintain consistent coding styles 2016-07-21 09:48:21 -05:00
d5a51d4de9 Merge pull request #168 from appleboy/patch-2
convert tab to space.
2016-07-21 16:54:57 +03:00
c7fae1a807 convert tab to space. 2016-07-21 11:05:52 +08:00
d6329c26b3 Merge pull request #165 from orette/mongodb-library-fix
Added pkg-config to the PHP extentions and Tools that are installed from APT
2016-07-21 05:35:04 +03:00
a96ee88692 Added pkg-config to the PHP extentions and Tools that are installed from APT 2016-07-20 15:59:50 -05:00
2799a94a9f Merge pull request #159 from computerfr33k/master
Add caddy webserver container
2016-07-20 07:41:45 +03:00
5bcbe0d291 add rewrite rule to fix 404 errors when navigating to different pages. 2016-07-19 22:16:36 -05:00
9e7a669d5b incorporate upstream changes. 2016-07-19 22:01:20 -05:00
9b084433c3 add caddy server. 2016-07-19 21:51:20 -05:00
fc303dee08 Merge pull request #151 from computerfr33k/issue-147
Fix Memcached extension not installing
2016-07-18 23:55:18 +03:00
d75a43c615 Update Dockerfile-70
fixes memcached extension not installing
2016-07-16 13:07:56 -05:00
06337e6024 Merge pull request #144 from appleboy/patch-7
#140 update php 5.5 and 5.6
2016-07-14 15:29:54 +03:00
16b82d066e #140 update php 5.5 and 5.6
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-07-14 09:56:05 +08:00
074deec781 Merge branch 'master' of https://github.com/LaraDock/laradock
* 'master' of https://github.com/LaraDock/laradock:
  fix the volumes mapping
2016-07-14 04:28:12 +03:00
2d382b683a general updates to the readme 2016-07-14 04:27:45 +03:00
68576f9022 fix the volumes mapping 2016-07-13 17:04:06 +03:00
2df00ecdad remove installing Prestissimo by default, to prevent the warning 2016-07-13 16:00:47 +03:00
aeb5a6bb63 Merge pull request #140 from yewjs/patch-1
Update Dockerfile-70
2016-07-13 15:50:31 +03:00
2bbf59ddda Merge pull request #139 from Kauhat/master
Database volume mapping changes & documentation
2016-07-13 15:47:17 +03:00
dca0545293 Fixed incorrect php-fpm container mapping 2016-07-13 10:44:17 +01:00
5f99478c76 Fixed workspace container mapping volumes to wrong container 2016-07-13 10:08:13 +01:00
48a53f1d24 Update Dockerfile-70
install libJPEG and enabled in GD
2016-07-13 14:12:32 +08:00
11cdfd440b Updated README
References #135
2016-07-12 17:52:06 +01:00
14cbe9f935 Moved volume container definitions
I've placed the `application` and `data` directories into a `volumes`
subdirectory. The top level `data` directory is now used for storing the
data used by the database (and other, if any) containers. The `data`
directory has also been added to the `.gitignore` file to prevent
accidental pushing of user data.
2016-07-12 17:11:57 +01:00
42d63236f1 Changed the data container volume mappings
All of the database data volume mapping have been changed from the host's
`/var/lib` directory to locally alongside the laradock installation. This
should hopefully prevent issues where data disappears after containers are
restarted or data on the host machine is overwritten by accident (scary!)

Additionally this should make data easier to backup between installations
- especially on Windows where `/var` does not exist and is created
  transparently by Docker Machine/Windows beta.

This change will most likely cause data to disappear from existing
installations, however it may reappear if moved to it's new home.

References #137, #138
2016-07-12 16:39:08 +01:00
d01d087431 Added more detail to the README 2016-07-12 16:38:20 +01:00
11c65c4a00 Fix variable not set warning
Added an untracked `.env` file to the root directory to prevent the
`WARNING: The INSTALL_PRESTISSIMO variable is not set` message from being
displayed when `docker-compose` is run.

Added section in README for optional features.
2016-07-12 16:27:55 +01:00
1b9630e8a1 Merge pull request #132 from Niksac/fix-readme
Update README.md
2016-07-07 21:39:26 +03:00
3a714339da Update README.md 2016-07-07 15:29:00 +02:00
65078505c1 Merge pull request #123 from appleboy/patch-6
Added support upload file size setting.
2016-06-28 16:06:29 +03:00
e0b4734dab Added support upload file size setting.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-06-28 17:18:37 +08:00
243392444f Merge pull request #122 from LaraDock/Hotfix/mongo
Hotfix/mongo
2016-06-27 14:00:09 +03:00
72a8fc049d Merge branch 'zhikiri-hotfix/mongo-support'
* zhikiri-hotfix/mongo-support:
  Fix conflict merging zhikiri-hotfix/mongo-support
2016-06-27 13:59:24 +03:00
de6db93da8 Fix conflict merging zhikiri-hotfix/mongo-support 2016-06-27 13:58:48 +03:00
1af9dc5ac2 Merge pull request #121 from zhikiri/feature/mcrypt-extension
Added supporting of the mcrypt extenstion
2016-06-27 13:45:37 +03:00
62878e7c49 Added supporting of the mcrypt extenstion 2016-06-27 11:30:25 +03:00
3cd1f070e1 Merge pull request #118 from appleboy/patch-5
remove duplicate white spaces
2016-06-25 20:38:54 +03:00
fb5ea7f42c remove duplicate white spaces
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-06-25 19:40:36 +08:00
aa8be6f95b list the contributors names in the readme
@benmag @mattythebatty @AminMkh @appleboy
2016-06-25 07:36:03 +03:00
aa0a726945 change enter container commands in the doc
`docker-compose run …` to `docker exec -it …`
2016-06-25 07:33:30 +03:00
5ebb061b70 Merge pull request #3 from LaraDock/master
Merge
2016-06-24 15:19:12 +01:00
e5e04e4e18 update the readme: exec command to run 2016-06-23 08:58:43 +03:00
44d8720400 Merge pull request #115 from appleboy/patch-2
Change command about enter workspace container.
2016-06-23 08:52:37 +03:00
f0200626ba Merge pull request #114 from Kauhat/master
Added support to conditionally install Prestissimo
2016-06-23 08:36:48 +03:00
69406db3e0 Change command about enter workspace container. 2016-06-23 13:16:52 +08:00
bcb749151a Added support to conditionally install Prestissimo 2016-06-22 21:47:06 +01:00
ca413edff4 Merge pull request #112 from appleboy/patch-2
Fixed Change wrong project name.
2016-06-22 17:21:05 +03:00
f6d1d6f617 Fixed Change wrong project name. 2016-06-22 22:20:24 +08:00
117382a050 Merge branch 'pr/111'
(fix conflict)
* pr/111:
  add Node Version Manager (nvm)
2016-06-22 17:18:23 +03:00
2e930df2a7 Merge pull request #109 from appleboy/composer
Load xdebug Zend extension with phpunit command.
2016-06-22 16:57:08 +03:00
4922c5fafd add Node Version Manager (nvm)
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-06-22 09:33:17 +08:00
198c38f6cd Load xdebug Zend extension with phpunit command.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2016-06-21 14:03:39 +08:00
ad49981dd6 Merge pull request #2 from LaraDock/master
Just update fork
2016-05-25 23:11:49 +01:00
e135fbb970 Merge pull request #1 from LaraDock/master
Pull new commits from forked
2016-05-13 09:29:06 +01:00
174 changed files with 18500 additions and 1155 deletions

12
.editorconfig Normal file
View File

@ -0,0 +1,12 @@
root = true
[*]
end_of_line = lf
insert_final_newline = true
[*]
charset = utf-8
[{Dockerfile,docker-compose.yml}]
indent_style = space
indent_size = 4

3
.gitignore vendored
View File

@ -1 +1,4 @@
.idea
/logs
/data
.env

View File

@ -0,0 +1,91 @@
baseurl = "http://laradock.io/"
languageCode = "en-us"
publishDir = "../../docs"
title = "Laradock"
theme = "hugo-material-docs"
metadataformat = "yaml"
canonifyurls = true
# Enable Google Analytics by entering your tracking id
googleAnalytics = "UA-37514928-9"
[params]
# General information
author = "Mahmoud Zalt"
description = "Laradock documentations."
copyright = ""
# Repository
provider = ""
repo_url = ""
version = ""
logo = ""
favicon = ""
permalink = "#"
# Custom assets
custom_css = []
custom_js = []
# Syntax highlighting theme
highlight_css = ""
[params.palette]
primary = "deep-purple"
accent = "purple"
[params.font]
text = "Doctarine"
code = "Source Code Pro"
[social]
twitter = ""
github = "laradock/laradock"
email = ""
# ------- MENU START -----------------------------------------
[[menu.main]]
name = "Introduction"
url = "introduction/"
weight = 1
[[menu.main]]
name = "Getting Started"
url = "getting-started/"
weight = 2
[[menu.main]]
name = "Documentation"
url = "documentation/"
weight = 3
[[menu.main]]
name = "Related Projects"
url = "related-projects/"
weight = 4
[[menu.main]]
name = "Help & Questions"
url = "help/"
weight = 5
[[menu.main]]
name = "Contributing"
url = "contributing/"
weight = 6
[[menu.main]]
name = "License"
url = "license/"
weight = 7
# ------- MENU END -----------------------------------------
[blackfriday]
smartypants = true
fractions = true
smartDashes = true
plainIDAnchors = true

View File

@ -0,0 +1,164 @@
---
title: Contributing
type: index
weight: 6
---
Your contribution is more than welcome.
## I have a Question/Problem
If you have questions about how to use Laradock, please direct your questions to the discussion on [Gitter](https://gitter.im/Laradock/laradock). If you believe your question could help others, then consider opening an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as `Question`) And you can still seek help on Gitter for it.
## I found an Issue
If have an issue or you found a typo in the documentation, you can help us by
opnening an [Issue](https://github.com/laradock/laradock/issues).
**Steps to do before opening an Issue:**
1. Before you submit your issue search the archive, maybe your question was already answered couple hours ago (search in the closed Issues as well).
2. Decide if the Issue belongs to this project or to [Docker](https://github.com/docker) itself! or even the tool you are using such as Nginx or MongoDB...
If your issue appears to be a bug, and hasn't been reported, then open a new issue.
*This Help us to maximize the effort we can spend fixing issues and adding new
features, by not reporting duplicate issues.*
## I want a Feature
You can request a new feature by submitting an [Issue](https://github.com/laradock/laradock/issues) (it will be labeled as `Feature Suggestion`). If you would like to implement a new feature then consider submitting a Pull Request yourself.
## I want to update the Documentation (Site)
Laradock uses [Hugo](https://gohugo.io/) as website generator tool, with the [Material Docs theme](http://themes.gohugo.io/theme/material-docs/). You might need to check their docs quickly.
1. Install [Hugo](https://gohugo.io/) on your machine (easy thing).
2. Open the `DOCUMENTATION/_settings/content` and search for the markdown file you want to edit (every folder represents a section in the menu).
3. Delete the `/docs` folder from the root.
4. When you finish editing, run the `hugo` command to generate the HTML docs (in the `/docs`).
### To Host the website locally
Go to `DOCUMENTATION/_settings` in your terminal and run `hugo serve` to host the website locally.
### Edit the sidebar
To add a new section to the sidebar or edit existing one, you need to edit this file `DOCUMENTATION/_settings/config.toml`.
## How to support new Software (Add new Container)
* Create folder with the software name.
* Add a `Dockerfile`, write your code there.
* You may add additional files in the software folder.
* Add the software to the `docker-compose.yml` file.
* Make sure you follow our commenting style.
* Add the software in the `Documentation`.
## Edit existing Software (Edit a Container)
* Open the software (container) folder.
* Edit the files you want to update.
* **Note:** If you want to edit the base image of the `Workspace` or the `php-fpm` Containers,
you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.
* Make sure to update the `Documentation` in case you made any changes.
## Pull Request
### 1. Before Submitting a Pull Request (PR)
Always Test everything and make sure its working:
- Pull the latest updates (or fork of you dont have permission)
- Before editing anything:
- Test building the container (docker-compose build --no-cache container-name) build with no cache first.
- Test running the container with some other containers in real app and see of everything is working fine.
- Now edit the container (edit section by section and test rebuilding the container after every edited section)
- Testing building the container (docker-compose build container-name) with no errors.
- Test it in a real App if possible.
### 2. Submitting a PR
Consider the following guidelines:
* Search [GitHub](https://github.com/laradock/laradock/pulls) for an open or closed Pull Request that relates to your submission. You don't want to duplicate efforts.
* Make your changes in a new git branch:
```shell
git checkout -b my-fix-branch master
```
* Commit your changes using a descriptive commit message.
* Push your branch to GitHub:
```shell
git push origin my-fix-branch
```
* In GitHub, send a pull request to `laradock:master`.
* If we suggest changes then:
* Make the required updates.
* Commit your changes to your branch (e.g. `my-fix-branch`).
* Push the changes to your GitHub repository (this will update your Pull Request).
> If the PR gets too outdated we may ask you to rebase and force push to update the PR:
```shell
git rebase master -i
git push origin my-fix-branch -f
```
*WARNING. Squashing or reverting commits and forced push thereafter may remove GitHub comments on code that were previously made by you and others in your commits.*
### 3. After your PR is merged
After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:
* Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
```shell
git push origin --delete my-fix-branch
```
* Check out the master branch:
```shell
git checkout master -f
```
* Delete the local branch:
```shell
git branch -D my-fix-branch
```
* Update your master with the latest upstream version:
```shell
git pull --ff upstream master
```
<br>
#### Happy Coding :)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,210 @@
---
title: Getting Started
type: index
weight: 2
---
## Requirements
- [Git](https://git-scm.com/downloads)
- [Docker](https://www.docker.com/products/docker/) `>= 1.12`
## Installation
Choose the setup the best suits your needs.
- [A) Setup for Single Project](#A)
- [A.1) Already have a PHP project](#A1)
- [A.2) Don't have a PHP project yet](#A2)
- [B) Setup for Multiple Projects](#B)
<a name="A"></a>
### A) Setup for Single Project
> (Follow these steps if you want a separate Docker environment for each project)
<a name="A1"></a>
### A.1) Already have a PHP project:
1 - Clone laradock on your project root directory:
```bash
git submodule add https://github.com/Laradock/laradock.git
```
**Notes:**
- If you are not using Git yet for your project, you can use `git clone` instead of `git submodule `.
- Note 2: To keep track of your Laradock changes, between your projects and also keep Laradock updated. [Check this](#keep-tracking-Laradock)
Your folder structure should look like this:
```
+ project-a
+ laradock-a
+ project-b
+ laradock-b
```
(It's important to rename the folders differently in each project.)
> **Now jump to the [Usage](#Usage) section.**
<a name="A2"></a>
### A.2) Don't have a PHP project yet:
1 - Clone this repository anywhere on your machine:
```bash
git clone https://github.com/laradock/laradock.git
```
Your folder structure should look like this:
```
+ laradock
+ project-z
```
2 - Edit your web server sites configuration.
**In case of NGINX:** open `nginx/sites/default.conf` and change the `root` from `/var/www/public` to `/var/www/{my-project-folder-name}/public`.
*Or you can keep `default.conf` as it is, and create a separate config `my-site.conf` file for it.*
**In case of Apache:** :P
<br>
> **Now jump to the [Usage](#Usage) section.**
<a name="B"></a>
### B) Setup for Multiple Projects:
> (Follow these steps if you want a single Docker environment for all your project)
1 - Clone this repository anywhere on your machine (similar to [Steps A.2. from above](#A2)):
```bash
git clone https://github.com/laradock/laradock.git
```
Your folder structure should look like this:
```
+ laradock
+ project-1
+ project-2
```
2 - Go to `nginx/sites` and create config files to point to different project directory when visiting different domains.
Laradock by default includes `project-1.conf` and `project-2.conf` as working samples.
3 - change the default names `project-n`:
You can rename the config files, project folders and domains as you like, just make sure the `root` in the config files, is pointing to the correct project folder name.
4 - Add the domains to the **hosts** files.
```
127.0.0.1 project-1.dev
127.0.0.1 project-2.dev
```
> **Now jump to the [Usage](#Usage) section.**
<a name="Usage"></a>
## Usage
**Read Before starting:**
If you are using **Docker Toolbox** (VM), do one of the following:
- Upgrade to Docker [Native](https://www.docker.com/products/docker) for Mac/Windows (Recommended). Check out [Upgrading Laradock](#upgrading-laradock)
- Use Laradock v3.* (Visit the `Laradock-ToolBox` [Branch](https://github.com/laradock/laradock/tree/Laradock-ToolBox)).
<br>
>**Warning:** If you used an older version of Laradock it's highly recommended to rebuild the containers you need to use [see how you rebuild a container](#Build-Re-build-Containers) in order to prevent as much errors as possible.
<br>
1 - Enter the laradock folder and rename `env-example` to `.env`
```shell
cp env-example .env
```
You can edit the `.env` file to chose which software's you want to be installed in your environment. You can always refer to the `docker-compose.yml` file to see how those variables are been used.
2 - Build the enviroment and run it using `docker-compose`
In this example we'll see how to run NGINX (web server) and MySQL (database engine) to host a PHP Web Scripts:
```bash
docker-compose up -d nginx mysql
```
**Note**: The `workspace` and `php-fpm` will run automatically in most of the cases, so no need to specify them in the `up` command. If you couldn't find them running then you need specify them as follow: `docker-compose up -d nginx php-fpm mysql workspace`.
You can select your own combination of containers form the list below:
> `nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `rabbitmq`, `beanstalkd-console`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`, `elasticsearch`, `rethinkdb`, `postgres-postgis`, `certbot`, `mailhog`, `minio` and more...!
*(Please note that sometimes we forget to update the docs, so check the `docker-compose.yml` file to see an updated list of all available containers).*
<br>
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...)
```bash
docker-compose exec workspace bash
```
*Alternatively, for Windows PowerShell users: execute the following command to enter any running container:*
```bash
docker exec -it {workspace-container-id} bash
```
**Note:** You can add `--user=laradock` to have files created as your host's user. Example:
```shell
docker-compose exec --user=laradock workspace bash
```
*You can change the PUID (User id) and PGID (group id) variables from the `.env` file)*
<br>
4 - Update your project configurations to use the database host
Open your PHP project's `.env` file or whichever configuration file you are reading from, and set the database host `DB_HOST` to `mysql`:
```env
DB_HOST=mysql
```
*If you want to install Laravel as PHP project, see [How to Install Laravel in a Docker Container](#Install-Laravel).*
<br>
5 - Open your browser and visit your localhost address `http://localhost/`. If you followed the multiple projects setup, you can visit `http://project-1.dev/` and `http://project-2.dev/`. But first don't

View File

@ -0,0 +1,9 @@
---
title: Help & Questions
type: index
weight: 5
---
Join the chat room on [Gitter](https://gitter.im/Laradock/laradock) and get help and support from the community.
You can as well can open an [issue](https://github.com/laradock/laradock/issues) on Github (will be labeled as Question) and discuss it with people on [Gitter](https://gitter.im/Laradock/laradock).

View File

@ -0,0 +1,5 @@
---
title: Welcome
type: index
weight: 0
---

View File

@ -0,0 +1,206 @@
---
title: Introduction
type: index
weight: 1
---
Laradock strives to make the PHP development experience easier and faster.
It contains pre-packaged Docker Images that provides you a wonderful *development* environment without requiring you to install PHP, NGINX, MySQL, Redis, and any other software on your machines.
Laradock is configured to run Laravel Apps by default, and it can be modified to run all kinds of PHP Apps (Symfony, CodeIgniter, WordPress, Drupal...).
## Quick Overview
Let's see how easy it is to install `NGINX`, `PHP`, `Composer`, `MySQL`, `Redis` and `beanstalkd`:
1 - Clone Laradock inside your PHP project:
```shell
git clone https://github.com/Laradock/laradock.git
```
2 - Enter the laradock folder and rename `env-example` to `.env`.
```shell
cp env-example .env
```
3 - Run your containers:
```shell
docker-compose up -d nginx mysql redis beanstalkd
```
3 - Open your project's `.env` file and set the following:
```shell
DB_HOST=mysql
REDIS_HOST=redis
QUEUE_HOST=beanstalkd
```
4 - Open your browser and visit localhost: `http://localhost`.
```shell
That's it! enjoy :)
```
<a name="what-is-docker"></a>
## What is Docker?
[Docker](https://www.docker.com) is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of [operating-system-level virtualization](https://en.wikipedia.org/wiki/Operating-system-level_virtualization) on Linux, Mac OS and Windows.
<a name="why-docker-not-vagrant"></a>
## Why Docker not Vagrant!?
[Vagrant](https://www.vagrantup.com) creates Virtual Machines in minutes while Docker creates Virtual Containers in seconds.
Instead of providing a full Virtual Machines, like you get with Vagrant, Docker provides you **lightweight** Virtual Containers, that share the same kernel and allow to safely execute independent processes.
In addition to the speed, Docker gives tons of features that cannot be achieved with Vagrant.
Most importantly Docker can run on Development and on Production (same environment everywhere). While Vagrant is designed for Development only, (so you have to re-provision your server on Production every time).
<a name="laradock-vs-homestead"></a>
## Laradock VS Homestead (For Laravel Developers)
> Laradock It's like Laravel Homestead but for Docker instead of Vagrant.
Laradock and [Homestead](https://laravel.com/docs/master/homestead) both give you complete virtual development environments. (Without the need to install and configure every single software on your own Operating System).
- Homestead is a tool that controls Vagrant for you (using Homestead special commands). And Vagrant manages your Virtual Machine.
- Laradock is a tool that controls Docker for you (using Docker & Docker Compose official commands). And Docker manages your Virtual Containers.
Running a virtual container is much faster than running a full virtual Machine. Thus **Laradock is much faster than Homestead**.
<a name="Demo"></a>
## Demo Video
What's better than a **Demo Video**:
- Laradock [v4.*](https://www.youtube.com/watch?v=TQii1jDa96Y)
- Laradock [v2.*](https://www.youtube.com/watch?v=-DamFMczwDA)
- Laradock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
- Laradock [v0.1](https://www.youtube.com/watch?v=3YQsHe6oF80)
<a name="features"></a>
## Features
- Easy switch between PHP versions: 7.0, 5.6, 5.5...
- Choose your favorite database engine: MySQL, Postgres, MariaDB...
- Run your own combination of software: Memcached, HHVM, Beanstalkd...
- Every software runs on a separate container: PHP-FPM, NGINX, PHP-CLI...
- Easy to customize any container, with simple edit to the `Dockerfile`.
- All Images extends from an official base Image. (Trusted base Images).
- Pre-configured NGINX for Laravel.
- Easy to apply configurations inside containers.
- Clean and well structured Dockerfiles (`Dockerfile`).
- Latest version of the Docker Compose file (`docker-compose`).
- Everything is visible and editable.
- Fast Images Builds.
- More to come every week..
<a name="Supported-Containers"></a>
## Supported Software (Containers)
- **Database Engines:**
- MySQL
- MariaDB
- MongoDB
- Neo4j
- RethinkDB
- PostgreSQL
- Postgres Postgis
- **Cache Engines:**
- Redis
- Memcached
- Aerospike
- **PHP Servers:**
- NGINX
- Apache2
- Caddy
- **PHP Compilers:**
- PHP-FPM
- HHVM
- **Message Queuing Systems:**
- Beanstalkd
- Beanstalkd Console
- RabbitMQ
- RabbitMQ Console
- **Tools:**
- PhpMyAdmin
- PgAdmin
- ElasticSearch
- Selenium
- Certbot
- Mailhog
- Minio
- Workspace
- PHP7-CLI
- Composer
- Git
- Linuxbrew
- Node
- Gulp
- SQLite
- xDebug
- Envoy
- Deployer
- Vim
- Yarn
- ... Many other supported tools are not documented. (Will be updated soon)
>If you can't find your Software, build it yourself and add it to this list. Contributions are welcomed :)
<a name="Chat"></a>
## Chat with us
You are welcome to join our chat room on Gitter.
[![Gitter](https://badges.gitter.im/Laradock/laradock.svg)](https://gitter.im/Laradock/laradock?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

View File

@ -0,0 +1,7 @@
---
title: License
type: index
weight: 7
---
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE) (MIT)

View File

@ -0,0 +1,18 @@
---
title: Related Projects
type: index
weight: 4
---
Laradock related projects:
* [Laradock CLI](https://github.com/lorinlee/laradock-cli) by [LorinLee](https://github.com/lorinlee)
* [Laradock Env](https://github.com/bagart/laradock_env) by [BAGArt](https://github.com/bagart)
* [Klaradock](https://github.com/poyhsiao/Klaradock) by [Kim Hsiao](https://github.com/poyhsiao)
* [Ansible Laradock Kubernetes](https://github.com/sifat-rahim/ansible-laradock-kubernetes) by [Sifat Rahim](https://github.com/sifat-rahim)
These Docker Compose projects have piqued our interest:
* [MageDock](https://github.com/ojhaujjwal/magedock) by [Ujjwal Ojha](https://github.com/ojhaujjwal)
* [RubyDev-Dock](https://github.com/scudelletti/rubydev-dock) by [Diogo Scudelletti](https://github.com/scudelletti)
* [NoDock](https://github.com/Osedea/nodock) by [Osedea](https://github.com/Osedea)
If you want your project listed here, please open an issue.

View File

View File

@ -0,0 +1 @@
laradock.io

View File

@ -0,0 +1,29 @@
# Changelog
### 11th May 2016
#### Add templates for section lists
Sections such as www.example.com/foo/ will now be rendered with a list of all pages that are part of this section. The list shows the pages' title and a summary of their content.
[Show me the diff](https://github.com/digitalcraftsman/hugo-material-docs/commit/1f8393a8d4ce1b8ee3fc7d87be05895c12810494)
### 22nd March 2016
#### Changing setup for Google Analytics
Formerly, the tracking id for Google Analytics was set like below:
```toml
[params]
google_analytics = ["UA-XXXXXXXX-X", "auto"]
```
Now the theme uses Hugo's own Google Analytics config option. The variable moved outside the scope of `params` and the setup requires only the tracking id as a string:
```toml
googleAnalytics = "UA-XXXXXXXX-X"
```
[Show me the diff](https://github.com/digitalcraftsman/hugo-material-docs/commit/fa10c8eef935932426d46b662a51f29a5e0d48e2)

View File

@ -0,0 +1,20 @@
Copyright (c) 2016 Digitalcraftsman <digitalcraftsman@protonmail.com><br>
Copyright (c) 2016 Martin Donath <martin.donath@squidfunk.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.

View File

@ -0,0 +1,40 @@
# Material Docs
A material design theme for [Hugo](https://gohugo.io).
[![Screenshot](https://raw.githubusercontent.com/digitalcraftsman/hugo-material-docs/master/static/images/screen.png)](https://digitalcraftsman.github.io/hugo-material-docs/)
## Quick start
Install with `git`:
git clone https://github.com/digitalcraftsman/hugo-material-docs.git themes/hugo-material-docs
Next, take a look in the `exampleSite` folder at. This directory contains an example config file and the content for the demo. It serves as an example setup for your documentation.
Copy at least the `config.toml` in the root directory of your website. Overwrite the existing config file if necessary.
Hugo includes a development server, so you can view your changes as you go -
very handy. Spin it up with the following command:
``` sh
hugo server
```
Now you can go to [localhost:1313](http://localhost:1313) and the Material
theme should be visible. For detailed installation instructions visit the [demo](http://themes.gohugo.io/theme/material-docs/).
Noteworthy changes of this theme are listed in the [changelog](https://github.com/digitalcraftsman/hugo-material-docs/blob/master/CHANGELOG.md).
## Acknowledgements
A big thank you to [Martin Donath](https://github.com/squidfunk). He created the original [Material theme](https://github.com/squidfunk/mkdocs-material) for Hugo's companion [MkDocs](http://www.mkdocs.org/). This port wouldn't be possible without him.
Furthermore, thanks to [Steve Francia](https://gihub.com/spf13) for creating Hugo and the [awesome community](https://github.com/spf13/hugo/graphs/contributors) around the project.
## License
The theme is released under the MIT license. Read the [license](https://github.com/digitalcraftsman/hugo-material-docs/blob/master/LICENSE.md) for more information.

View File

@ -0,0 +1,2 @@
---
---

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

View File

@ -0,0 +1,57 @@
{{ partial "head" . }}
<div class="backdrop">
<div class="backdrop-paper"></div>
</div>
<input class="toggle" type="checkbox" id="toggle-drawer">
<input class="toggle" type="checkbox" id="toggle-search">
<label class="toggle-button overlay" for="toggle-drawer"></label>
<header class="header">
{{ partial "header" . }}
</header>
<main class="main">
<div class="drawer">
{{ partial "drawer" . }}
</div>
<article class="article">
<div class="wrapper">
<h1>Pages in {{ .Title | singularize }}</h1>
{{ range .Data.Pages }}
<a href="{{ .Permalink }}" title="{{ .Title }}">
<h2>{{ .Title }}</h2>
</a>
<br>
{{ printf "%s" .Summary | markdownify }}
<hr>
{{ end }}
<aside class="copyright" role="note">
{{ with .Site.Params.copyright }}
&copy; {{ $.Now.Format "2006" }} {{ . }} &ndash;
{{ end }}
Documentation built with
<a href="https://www.gohugo.io" target="_blank">Hugo</a>
using the
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme.
</aside>
</div>
</article>
<div class="results" role="status" aria-live="polite">
<div class="scrollable">
<div class="wrapper">
<div class="meta"></div>
<div class="list"></div>
</div>
</div>
</div>
</main>
{{ partial "footer_js" . }}

View File

@ -0,0 +1,57 @@
{{ partial "head" . }}
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
{{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}}
{{ .Scratch.Set "repo_id" $repo_id }}
{{ end }}
<div class="backdrop">
<div class="backdrop-paper"></div>
</div>
<input class="toggle" type="checkbox" id="toggle-drawer">
<input class="toggle" type="checkbox" id="toggle-search">
<label class="toggle-button overlay" for="toggle-drawer"></label>
<header class="header">
{{ partial "header" . }}
</header>
<main class="main">
<div class="drawer">
{{ partial "drawer" . }}
</div>
<article class="article">
<div class="wrapper">
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
{{ .Content }}
<aside class="copyright" role="note">
{{ with .Site.Params.copyright }}
&copy; {{ $.Now.Format "2006" }} {{ . }} &ndash;
{{ end }}
Documentation built with
<a href="https://www.gohugo.io" target="_blank">Hugo</a>
using the
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme.
</aside>
<footer class="footer">
{{ partial "footer" . }}
</footer>
</div>
</article>
<div class="results" role="status" aria-live="polite">
<div class="scrollable">
<div class="wrapper">
<div class="meta"></div>
<div class="list"></div>
</div>
</div>
</div>
</main>
{{ partial "footer_js" . }}

View File

@ -0,0 +1,61 @@
{{ partial "head" . }}
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
{{ $repo_id := replace .Site.Params.repo_url "https://github.com/" ""}}
{{ .Scratch.Set "repo_id" $repo_id }}
{{ end }}
<div class="backdrop">
<div class="backdrop-paper"></div>
</div>
<input class="toggle" type="checkbox" id="toggle-drawer">
<input class="toggle" type="checkbox" id="toggle-search">
<label class="toggle-button overlay" for="toggle-drawer"></label>
<header class="header">
{{ partial "header" . }}
</header>
<main class="main">
<div class="drawer">
{{ partial "drawer" . }}
</div>
<article class="article">
<div class="wrapper">
{{ range where .Site.Pages "Type" "index" }}
<h1>{{ .Title }} {{ if .IsDraft }} (Draft){{ end }}</h1>
{{ .Content }}
{{ end }}
<aside class="copyright" role="note">
{{ with .Site.Params.copyright }}
&copy; {{ $.Now.Format "2006" }} {{ . }} &ndash;
{{ end }}
Documentation built with
<a href="https://www.gohugo.io" target="_blank">Hugo</a>
using the
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme,
by
<a href="https://zalt.me">Mahmoud Zalt</a>.
</aside>
<footer class="footer">
{{ partial "footer" . }}
</footer>
</div>
</article>
<div class="results" role="status" aria-live="polite">
<div class="scrollable">
<div class="wrapper">
<div class="meta"></div>
<div class="list"></div>
</div>
</div>
</div>
</main>
{{ partial "footer_js" . }}

View File

@ -0,0 +1,78 @@
<nav aria-label="Navigation">
<!--<a href="{{ with .Site.Params.repo_url }}{{ . }}{{ else }}{{ .Site.BaseURL }}{{ end }}" class="project">-->
<!--<div class="banner">-->
<!--{{ with .Site.Params.logo }}-->
<!--<div class="logo">-->
<!--<img src="{{ $.Site.BaseURL }}{{ . }}">-->
<!--</div>-->
<!--{{ end }}-->
<!--<div class="name">-->
<!--<strong>{{ .Site.Title }} {{ with .Site.Params.version }}<span class="version">{{ . }}</span>{{ end }}</strong>-->
<!--{{ with .Scratch.Get "repo_id" }}-->
<!--<br>-->
<!--{{ . }}-->
<!--{{ end }}-->
<!--</div>-->
<!--</div>-->
<!--</a>-->
<div class="scrollable">
<div class="wrapper">
{{ if (eq (trim .Site.Params.provider " " | lower) "github") | and (isset .Site.Params "repo_url") }}
<ul class="repo">
<li class="repo-download">
<a href="{{ .Site.Params.repo_url }}/archive/master.zip" target="_blank" title="Download" data-action="download">
<i class="icon icon-download"></i> Download
</a>
</li>
<li class="repo-stars">
<a href="{{ .Site.Params.repo_url }}/stargazers" target="_blank" title="Stargazers" data-action="star">
<i class="icon icon-star"></i> Stars
<span class="count">&ndash;</span>
</a>
</li>
</ul>
<hr>
{{ end }}
<div class="toc">
{{ if gt (len .Site.Menus.main) 0 }}
<ul>
{{ partial "nav" . }}
</ul>
{{ end }}
{{ if isset .Site.Params "author" }}
<!--<hr>-->
<!--<span class="section">The author</span>-->
<ul>
{{ with .Site.Social.twitter }}
<li>
<a href="https://twitter.com/{{ . }}" target="_blank" title="@{{ . }} on Twitter">
@{{ . }} on Twitter
</a>
</li>
{{ end }}
<!--{{ with .Site.Social.github }}-->
<!--<li>-->
<!--<a href="https://github.com/{{ . }}" target="_blank" title="@{{ . }} on GitHub">-->
<!--@{{ . }} on GitHub-->
<!--</a>-->
<!--</li>-->
<!--{{ end }}-->
{{ with .Site.Social.email }}
<li>
<a href="mailto:{{ . }}" title="Email of {{ . }}">
Contact via email
</a>
</li>
{{ end }}
</ul>
{{ end }}
</div>
</div>
</div>
</nav>

View File

@ -0,0 +1,74 @@
{{ if .IsPage }}
{{ if .Prev | or .Next }}
<nav class="pagination" aria-label="Footer">
<div class="previous">
{{ if .Prev }}
<a href="{{ .Prev.Permalink }}" title="{{ .Prev.Title }}">
<span class="direction">
Previous
</span>
<div class="page">
<div class="button button-previous" role="button" aria-label="Previous">
<i class="icon icon-back"></i>
</div>
<div class="stretch">
<div class="title">
{{ .Prev.Title }}
</div>
</div>
</div>
</a>
{{ end }}
</div>
<div class="next">
{{ if .Next }}
<a href="{{ .Next.Permalink }}" title="{{ .Next.Title }}">
<span class="direction">
Next
</span>
<div class="page">
<div class="stretch">
<div class="title">
{{ .Next.Title }}
</div>
</div>
<div class="button button-next" role="button" aria-label="Next">
<i class="icon icon-forward"></i>
</div>
</div>
</a>
{{ end }}
</div>
</nav>
{{ end }}
{{ end }}
{{ if .IsHome }}
{{ if gt (len .Site.Pages) 2 }}
<nav class="pagination" aria-label="Footer">
<div class="previous">
</div>
{{ $title := (index (.Site.Pages.ByDate) 1).Title }}
{{ $permalink := (index (.Site.Pages.ByDate) 1).Permalink }}
<div class="next">
<a href="{{ $permalink }}" title="{{ $title }}">
<span class="direction">
Next
</span>
<div class="page">
<div class="stretch">
<div class="title">
{{ $title }}
</div>
</div>
<div class="button button-next" role="button" aria-label="Next">
<i class="icon icon-forward"></i>
</div>
</div>
</a>
</div>
</nav>
{{ end }}
{{ end }}

View File

@ -0,0 +1,91 @@
<script>
{{ with .Scratch.Get "repo_id" }}
var base_url = '{{ (printf "%s" $.Site.BaseURL) | safeJS }}';
var repo_id = '{{ . | safeJS }}';
{{ else }}
var base_url = '';
var repo_id = '';
{{ end }}
</script>
<script src="{{ "javascripts/application.js" | absURL }}"></script>
{{ range .Site.Params.custom_js }}
<script src="{{ . | absURL }}"></script>
{{ end }}
<script>
{{ "/* Add headers to scrollspy */" | safeJS }}
var headers = document.getElementsByTagName("h2");
var scrollspy = document.getElementById('scrollspy');
if(scrollspy) {
if(headers.length > 0) {
for(var i = 0; i < headers.length; i++) {
var li = document.createElement("li");
li.setAttribute("class", "anchor");
var a = document.createElement("a");
a.setAttribute("href", "#" + headers[i].id);
a.setAttribute("title", headers[i].innerHTML);
a.innerHTML = headers[i].innerHTML;
li.appendChild(a)
scrollspy.appendChild(li);
}
} else {
scrollspy.parentElement.removeChild(scrollspy)
}
{{ "/* Add permanent link next to the headers */" | safeJS }}
var headers = document.querySelectorAll("h1, h2, h3, h4, h5, h6");
for(var i = 0; i < headers.length; i++) {
var a = document.createElement("a");
a.setAttribute("class", "headerlink");
a.setAttribute("href", "#" + headers[i].id);
a.setAttribute("title", "Permanent link")
a.innerHTML = {{ or .Site.Params.permalink "¶" }};
headers[i].appendChild(a);
}
}
</script>
{{ with .Site.GoogleAnalytics }}
<script>
(function(i,s,o,g,r,a,m){
i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||
[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;
m.parentNode.insertBefore(a,m)
})(window, document,
'script', '//www.google-analytics.com/analytics.js', 'ga');
/* General initialization */
ga('create', '{{ . }}', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
/* Track outbound links */
var buttons = document.querySelectorAll('a');
Array.prototype.map.call(buttons, function(item) {
if (item.host != document.location.host) {
item.addEventListener('click', function() {
var action = item.getAttribute('data-action') || 'follow';
ga('send', 'event', 'outbound', action, item.href);
});
}
});
/* Register handler to log search on blur */
var query = document.querySelector('.query');
query.addEventListener('blur', function() {
if (this.value) {
var path = document.location.pathname;
ga('send', 'pageview', path + '?q=' + this.value);
}
});
</script>
{{ end }}
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.8.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
</body>
</html>

View File

@ -0,0 +1,79 @@
<!DOCTYPE html>
<!--[if lt IE 7 ]><html class="no-js ie6"><![endif]-->
<!--[if IE 7 ]><html class="no-js ie7"><![endif]-->
<!--[if IE 8 ]><html class="no-js ie8"><![endif]-->
<!--[if IE 9 ]><html class="no-js ie9"><![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html class="no-js"> <!--<![endif]-->
<head {{ with .Site.LanguageCode }}lang="{{ . }}"{{ end }}>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=10" />
<title>{{ .Title }}{{ if not .IsHome }} - {{ .Site.Title }}{{ end }}</title>
{{ .Hugo.Generator }}
{{ with .Site.Params.description }}
<meta name="description" content="{{ . }}">
{{ end }}
<link rel="canonical" href="{{ .Permalink }}">
{{ with .Site.Params.author }}
<meta name="author" content="{{ . }}">
{{ end }}
<meta property="og:url" content="{{ .Permalink }}">
{{ with .Site.Title }}<meta property="og:title" content="{{ . }}">{{ end }}
{{ with .Site.Params.logo }}<meta property="og:image" content="{{ . | absURL }}">{{ end }}
{{ with .Site.Title }}<meta name="apple-mobile-web-app-title" content="{{ . }}">{{ end }}
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<link rel="shortcut icon" type="image/x-icon" href="{{ with .Site.Params.favicon }}{{ . | absURL }}{{ else }}{{ "images/favicon.ico" | absURL }}{{ end }}">
<link rel="icon" type="image/x-icon" href="{{ with .Site.Params.favicon }}{{ . | absURL }}{{ else }}{{ "images/favicon.ico" | absURL }}{{ end }}">
<style>
@font-face {
font-family: 'Icon';
src: url('{{ "fonts/icon.eot?52m981" | absURL }}');
src: url('{{ "fonts/icon.eot?#iefix52m981" | absURL }}')
format('embedded-opentype'),
url('{{ "fonts/icon.woff?52m981" | absURL }}')
format('woff'),
url('{{ "fonts/icon.ttf?52m981" | absURL }}')
format('truetype'),
url('{{ "fonts/icon.svg?52m981#icon" | absURL }}')
format('svg');
font-weight: normal;
font-style: normal;
}
</style>
<link rel="stylesheet" href="{{ "stylesheets/application.css" | absURL }}">
<link rel="stylesheet" href="{{ "stylesheets/temporary.css" | absURL }}">
<link rel="stylesheet" href="{{ "stylesheets/palettes.css" | absURL }}">
<link rel="stylesheet" href="{{ with .Site.Params.highlight_css }}{{ . | absURL }}{{ else }}{{ "stylesheets/highlight/highlight.css" | absURL }}{{ end }}">
{{/* set default values if no custom ones are defined */}}
{{ $text := or .Site.Params.font.text "Roboto" }}
{{ $code := or .Site.Params.font.code "Roboto Mono" }}
<link rel="stylesheet" href="//fonts.googleapis.com/css?family={{ $text }}:400,700|{{ replace $code " " "+" | safeURL }}">
<style>
body, input {
font-family: '{{ $text }}', Helvetica, Arial, sans-serif;
}
pre, code {
font-family: '{{ $code }}', 'Courier New', 'Courier', monospace;
}
</style>
{{ range .Site.Params.custom_css }}
<link rel="stylesheet" href="{{ . | absURL }}">
{{ end }}
<script src="{{ "javascripts/modernizr.js" | absURL }}"></script>
{{ with .RSSLink }}
<link href="{{ . }}" rel="alternate" type="application/rss+xml" title="{{ $.Site.Title }}" />
<link href="{{ . }}" rel="feed" type="application/rss+xml" title="{{ $.Site.Title }}" />
{{ end }}
</head>
<body class="{{ with .Site.Params.palette.primary }}palette-primary-{{ . }}{{end }} {{ with .Site.Params.palette.accent }}palette-accent-{{ . }}{{ end }}">

View File

@ -0,0 +1,46 @@
<nav aria-label="Header">
<div class="bar default">
<div class="button button-menu" role="button" aria-label="Menu">
<label class="toggle-button icon icon-menu" for="toggle-drawer">
<span></span>
</label>
</div>
<div class="stretch">
<div class="title">
<b>{{ .Site.Title }}</b> <span style="color: rgba(249, 245, 255, 0.63);"> / {{ .Title }}</span>
</div>
</div>
{{ with .Site.Social.twitter }}
<div class="button button-twitter" role="button" aria-label="Twitter">
<a href="https://twitter.com/{{ . }}" title="@{{ . }} on Twitter" target="_blank" class="toggle-button icon icon-twitter"></a>
</div>
{{ end }}
{{ with .Site.Social.github }}
<div class="button button-github" role="button" aria-label="GitHub">
<a style="padding: 0px; font-size:40px" href="https://github.com/{{ . }}" title="@{{ . }} on GitHub" target="_blank" class="toggle-button icon icon-github"></a>
</div>
<p style="font-size: 18px; padding: 8px">Github</p>
{{ end }}
<!-- TODO: disabled until Hugo supports the generation of a content index natively
<div class="button button-search" role="button" aria-label="Search">
<label class="toggle-button icon icon-search" title="Search" for="toggle-search"></label>
</div>
-->
</div>
<div class="bar search">
<div class="button button-close" role="button" aria-label="Close">
<label class="toggle-button icon icon-back" for="toggle-search"></label>
</div>
<div class="stretch">
<div class="field">
<input class="query" type="text" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck>
</div>
</div>
<div class="button button-reset" role="button" aria-label="Search">
<button class="toggle-button icon icon-close" id="reset-search"></button>
</div>
</div>
</nav>

View File

@ -0,0 +1,19 @@
{{ $currentNode := . }}
{{ range .Site.Menus.main.ByWeight }}
{{ $.Scratch.Set "currentMenuEntry" . }}
<li>
{{ if .HasChildren }}
<span class="section">{{ .Name | title }}</span>
<ul>
{{ range .Children }}
{{ $.Scratch.Set "currentMenuEntry" . }}
{{ partial "nav_link" $currentNode }}
{{ end }}
</ul>
{{ else }}
{{ partial "nav_link" $currentNode }}
{{ end }}
</li>
{{ end }}

View File

@ -0,0 +1,13 @@
{{ $currentMenuEntry := .Scratch.Get "currentMenuEntry" }}
{{ $isCurrent := eq .Permalink ($currentMenuEntry.URL | absURL | printf "%s") }}
<a {{ if $isCurrent }}class="current"{{ end }} title="{{ $currentMenuEntry.Name }}" href="{{ $currentMenuEntry.URL | relURL}}">
{{ $currentMenuEntry.Pre }}
{{ $currentMenuEntry.Name }}
</a>
{{ if $isCurrent }}
<ul id="scrollspy">
</ul>
{{ end }}

View File

@ -0,0 +1,4 @@
<div class="admonition note">
<p class="admonition-title">{{ .Get "title" }}</p>
<p>{{ printf "%s" .Inner | markdownify }}</p>
</div>

View File

@ -0,0 +1,4 @@
<div class="admonition warning">
<p class="admonition-title">{{ .Get "title" }}</p>
<p>{{ printf "%s" .Inner | markdownify }}</p>
</div>

View File

@ -0,0 +1,22 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>Generated by IcoMoon</metadata>
<defs>
<font id="icon" horiz-adv-x="1024">
<font-face units-per-em="1024" ascent="960" descent="-64" />
<missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" />
<glyph unicode="&#xe600;" glyph-name="search" d="M661.333 341.334h-33.92l-11.733 11.733c41.813 48.427 66.987 111.36 66.987 180.267 0 153.173-124.16 277.333-277.333 277.333s-277.333-124.16-277.333-277.333 124.16-277.333 277.333-277.333c68.907 0 131.84 25.173 180.267 66.773l11.733-11.733v-33.707l213.333-212.907 63.573 63.573-212.907 213.333zM405.333 341.334c-106.027 0-192 85.973-192 192s85.973 192 192 192 192-85.973 192-192-85.973-192-192-192z" />
<glyph unicode="&#xe601;" glyph-name="arrow-back" d="M853.333 469.334h-519.253l238.293 238.293-60.373 60.373-341.333-341.333 341.333-341.333 60.373 60.373-238.293 238.293h519.253v85.333z" />
<glyph unicode="&#xe602;" glyph-name="chevron-right" d="M426.667 682.667l-60.373-60.373 195.627-195.627-195.627-195.627 60.373-60.373 256 256z" />
<glyph unicode="&#xe603;" glyph-name="close" d="M810.667 664.96l-60.373 60.373-238.293-238.293-238.293 238.293-60.373-60.373 238.293-238.293-238.293-238.293 60.373-60.373 238.293 238.293 238.293-238.293 60.373 60.373-238.293 238.293z" />
<glyph unicode="&#xe604;" glyph-name="menu" d="M128 170.667h768v85.333h-768v-85.333zM128 384h768v85.333h-768v-85.333zM128 682.667v-85.333h768v85.333h-768z" />
<glyph unicode="&#xe605;" glyph-name="arrow-forward" d="M512 768l-60.373-60.373 238.293-238.293h-519.253v-85.333h519.253l-238.293-238.293 60.373-60.373 341.333 341.333z" />
<glyph unicode="&#xe606;" glyph-name="twitter" d="M1024 744.249c-37.676-16.708-78.164-28.002-120.66-33.080 43.372 26 76.686 67.17 92.372 116.23-40.596-24.078-85.556-41.56-133.41-50.98-38.32 40.83-92.922 66.34-153.346 66.34-116.022 0-210.088-94.058-210.088-210.078 0-16.466 1.858-32.5 5.44-47.878-174.6 8.764-329.402 92.4-433.018 219.506-18.084-31.028-28.446-67.116-28.446-105.618 0-72.888 37.088-137.192 93.46-174.866-34.438 1.092-66.832 10.542-95.154 26.278-0.020-0.876-0.020-1.756-0.020-2.642 0-101.788 72.418-186.696 168.522-206-17.626-4.8-36.188-7.372-55.348-7.372-13.538 0-26.698 1.32-39.528 3.772 26.736-83.46 104.32-144.206 196.252-145.896-71.9-56.35-162.486-89.934-260.916-89.934-16.958 0-33.68 0.994-50.116 2.94 92.972-59.61 203.402-94.394 322.042-94.394 386.422 0 597.736 320.124 597.736 597.744 0 9.108-0.206 18.168-0.61 27.18 41.056 29.62 76.672 66.62 104.836 108.748z" />
<glyph unicode="&#xe607;" glyph-name="github" d="M512.008 926.025c-282.738 0-512.008-229.218-512.008-511.998 0-226.214 146.704-418.132 350.136-485.836 25.586-4.738 34.992 11.11 34.992 24.632 0 12.204-0.48 52.542-0.696 95.324-142.448-30.976-172.504 60.41-172.504 60.41-23.282 59.176-56.848 74.916-56.848 74.916-46.452 31.778 3.51 31.124 3.51 31.124 51.4-3.61 78.476-52.766 78.476-52.766 45.672-78.27 119.776-55.64 149.004-42.558 4.588 33.086 17.852 55.68 32.506 68.464-113.73 12.942-233.276 56.85-233.276 253.032 0 55.898 20.004 101.574 52.76 137.428-5.316 12.9-22.854 64.972 4.952 135.5 0 0 43.006 13.752 140.84-52.49 40.836 11.348 84.636 17.036 128.154 17.234 43.502-0.198 87.336-5.886 128.256-17.234 97.734 66.244 140.656 52.49 140.656 52.49 27.872-70.528 10.35-122.6 5.036-135.5 32.82-35.856 52.694-81.532 52.694-137.428 0-196.654-119.778-239.95-233.79-252.624 18.364-15.89 34.724-47.046 34.724-94.812 0-68.508-0.596-123.644-0.596-140.508 0-13.628 9.222-29.594 35.172-24.566 203.322 67.776 349.842 259.626 349.842 485.768 0 282.78-229.234 511.998-511.992 511.998z" />
<glyph unicode="&#xe608;" glyph-name="download" d="M810.667 554.667h-170.667v256h-256v-256h-170.667l298.667-298.667 298.667 298.667zM213.333 170.667v-85.333h597.333v85.333h-597.333z" />
<glyph unicode="&#xe609;" glyph-name="star" d="M512 201.814l263.68-159.147-69.973 299.947 232.96 201.813-306.773 26.027-119.893 282.88-119.893-282.88-306.773-26.027 232.96-201.813-69.973-299.947z" />
<glyph unicode="&#xe610;" glyph-name="warning" d="M554 340.667v172h-84v-172h84zM554 170.667v86h-84v-86h84zM42 42.667l470 810 470-810h-940z" />
<glyph unicode="&#xe611;" glyph-name="hint" d="M614 682.667h240v-426h-300l-16 84h-240v-298h-84v726h384z" />
</font></defs></svg>

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,105 @@
/*
* overwrite the current primary color of the
* theme that is used as fallback in codeblocks
*/
.article pre code {
color: rgba(0, 0, 0, 0.8) !important;
}
/*
HIGHLIGHT.JS THEME
tweaked version of the Github theme
*/
.hljs {
display:block;
overflow-x:auto;
}
.hljs-comment,
.hljs-quote {
color:#998;
font-style:italic;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-subst {
color:#333;
font-weight:700;
}
.hljs-number,
.hljs-literal,
.hljs-variable,
.hljs-template-variable,
.hljs-tag .hljs-attr {
color:teal;
}
.hljs-string,
.hljs-doctag {
color:#d14;
}
.hljs-title,
.hljs-section,
.hljs-selector-id {
color:#900;
font-weight:700;
}
.hljs-subst {
font-weight:400;
}
.hljs-type,
.hljs-class .hljs-title {
color:#458;
font-weight:700;
}
.hljs-tag,
.hljs-name,
.hljs-attribute {
color:navy;
font-weight:400;
}
.hljs-regexp,
.hljs-link {
color:#009926;
}
.hljs-symbol,
.hljs-bullet {
color:#990073;
}
.hljs-built_in,
.hljs-builtin-name {
color:#0086b3;
}
.hljs-meta {
color:#999;
font-weight:700;
}
.hljs-deletion {
background:#fdd;
}
.hljs-addition {
background:#dfd;
}
.hljs-emphasis {
font-style:italic;
}
.hljs-strong {
font-weight:700;
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,11 @@
/* This file only exists (temporarily) until the
custom styling can be replaced with the
implementation of the upstream project.
*/
blockquote {
padding: 0 20px;
margin: 0 0 20px;
font-size: inherit;
border-left: 5px solid #eee;
}

View File

@ -0,0 +1,18 @@
name = "Material Docs"
license = "MIT"
licenselink = "https://github.com/digitalcraftsman/hugo-material-docs/blob/master/LICENSE.md"
description = "A material design theme for documentations."
homepage = "https://github.com/digitalcraftsman/hugo-material-docs"
tags = ["material", "documentation", "docs", "google analytics", "responsive"]
features = ["", ""]
min_version = 0.15
[author]
name = "Digitalcraftsman"
homepage = "https://github.com/digitalcraftsman"
# If porting an existing theme
[original]
name = "Martin Donath"
homepage = "http://struct.cc/"
repo = "https://github.com/squidfunk/mkdocs-material"

966
README-zh.md Normal file
View File

@ -0,0 +1,966 @@
# LaraDock
[![forthebadge](http://forthebadge.com/images/badges/built-by-developers.svg)](http://zalt.me)
[![Gitter](https://badges.gitter.im/LaraDock/laradock.svg)](https://gitter.im/LaraDock/laradock?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
LaraDock能够帮你在**Docker**上快速搭建**Laravel**应用。
<br>
就像Laravel Homestead一样但是Docker替换了Vagrant。
> 先在使用 LaraDock然后再学习它们。
<br>
## 目录
- [Intro](#Intro)
- [Features](#features)
- [Supported Software's](#Supported-Containers)
- [What is Docker](#what-is-docker)
- [What is Laravel](#what-is-laravel)
- [Why Docker not Vagrant](#why-docker-not-vagrant)
- [LaraDock VS Homestead](#laradock-vs-homestead)
- [Demo Video](#Demo)
- [Requirements](#Requirements)
- [Installation](#Installation)
- [Usage](#Usage)
- [Documentation](#Documentation)
- [Docker](#Docker)
- [List current running Containers](#List-current-running-Containers)
- [Close all running Containers](#Close-all-running-Containers)
- [Delete all existing Containers](#Delete-all-existing-Containers)
- [Enter a Container (SSH into a running Container)](#Enter-Container)
- [Edit default container configuration](#Edit-Container)
- [Edit a Docker Image](#Edit-a-Docker-Image)
- [Build/Re-build Containers](#Build-Re-build-Containers)
- [Add more Software's (Docker Images)](#Add-Docker-Images)
- [View the Log files](#View-the-Log-files)
- [Laravel](#Laravel):
- [Install Laravel from a Docker Container](#Install-Laravel)
- [Run Artisan Commands](#Run-Artisan-Commands)
- [Use Redis](#Use-Redis)
- [Use Mongo](#Use-Mongo)
- [PHP](#PHP)
- [Install PHP Extensions](#Install-PHP-Extensions)
- [Change the PHP-FPM Version](#Change-the-PHP-FPM-Version)
- [Change the PHP-CLI Version](#Change-the-PHP-CLI-Version)
- [Install xDebug](#Install-xDebug)
- [Misc](#Misc)
- [Use custom Domain](#Use-custom-Domain)
- [Enable Global Composer Build Install](#Enable-Global-Composer-Build-Install)
- [Install Prestissimo](#Install-Prestissimo)
- [Install Node + NVM](#Install-Node)
- [Debugging](#debugging)
- [Upgrading LaraDock](#upgrading-laradock)
- [Help & Questions](#Help)
<a name="Intro"></a>
## 介绍
LaraDock努力简化创建开发环境过程。
它包含预包装Docker镜像提供你一个美妙的开发环境而不需要安装PHP,NGINX,MySQL和其他任何软件在你本地机器上。
**使用概览:**
让我们了解使用它安装`NGINX`, `PHP`, `Composer`, `MySQL``Redis`,然后运行`Laravel`
1. 将LaraDock放到你的Laravel项目中
<br>
`git clone https://github.com/laradock/laradock.git`.
2. 进入LaraDock目录然后运行这些容器。
<br>
`docker-compose up -d nginx mysql redis`
3. 打开你的`.env`文件,然后设置`mysql``DB_HOST``redis``REDIS_HOST`
4. 打开浏览器访问localhost
<a name="features"></a>
### 特点
- 在PHP版本7.05.6.5.5...之中可以简单切换。
- 可选择你最喜欢的数据库引擎比如MySQL, Postgres, MariaDB...
- 可运行自己的软件组合比如Memcached, HHVM, Beanstalkd...
- 所有软件运行在不同的容器之中比如PHP-FPM, NGINX, PHP-CLI...
- 通过简单的编写`dockerfile`容易定制任何容器。
- 所有镜像继承自一个官方基础镜像Trusted base Images
- 可预配置Laravel的Nginx环境
- 容易应用容器中的配置
- 干净的结构化的Docker配置文件`dockerfile`
- 最新的Docker Compose 版本(`docker-compose`
- 所有的都是可视化和可编辑的
- 快速的镜像构建
- 每周都会有更新...
<a name="Supported-Containers"></a>
### 支持的软件 (容器)
- **数据库引擎:**
- MySQL
- PostgreSQL
- MariaDB
- MongoDB
- Neo4j
- **缓存引擎:**
- Redis
- Memcached
- **PHP 服务器:**
- NGINX
- Apache2
- Caddy
- **PHP 编译工具:**
- PHP-FPM
- HHVM
- **消息队列系统:**
- Beanstalkd (+ Beanstalkd Console)
- **工具:**
- Workspace (PHP7-CLI, Composer, Git, Node, Gulp, SQLite, Vim, Nano, cURL...)
>如果你找不到你需要的软件,构建它然后把它添加到这个列表。你的贡献是受欢迎的。
<a name="what-is-docker"></a>
### Docker是什么?
[Docker](https://www.docker.com) 是一个开源项目,自动化部署应用程序软件的容器,在Linux, Mac OS and Windows提供一个额外的抽象层和自动化的[操作系统级的虚拟化](https://en.wikipedia.org/wiki/Operating-system-level_virtualization)
<a name="what-is-laravel"></a>
### Laravel是什么?
额,这很认真的!!!
<a name="why-docker-not-vagrant"></a>
### 为什么使用Docker而不是Vagrant!?
[Vagrant](https://www.vagrantup.com)构建虚拟机需要几分钟然而Docker构建虚拟容器只需要几秒钟。
而不是提供一个完整的虚拟机,就像你用Vagrant,Docker为您提供**轻量级**虚拟容器,共享相同的内核和允许安全执行独立的进程。
除了速度,Docker提供大量的Vagrant无法实现的功能。
最重要的是Docker可以运行在开发和生产(相同环境无处不在)。Vagrant是专为开发,(所以在生产环境你必须每一次重建您的服务器)。
<a name="laradock-vs-homestead"></a>
### LaraDock Homestead 对比
LaraDock and [Homestead](https://laravel.com/docs/master/homestead) 给你一个完整的虚拟开发环境。(不需要安装和配置软件在你自己的每一个操作系统)。
Homestead 是一个工具,为你控制虚拟机(使用Homestead特殊命令)。Vagrant可以管理你的管理虚容器。
运行一个虚拟容器比运行一整个虚拟机快多了**LaraDock 比 Homestead快多了**
<a name="Demo"></a>
## 演示视频
还有什么比**演示视频**好:
- LaraDock [v4.0](https://www.youtube.com/watch?v=TQii1jDa96Y)
- LaraDock [v2.2](https://www.youtube.com/watch?v=-DamFMczwDA)
- LaraDock [v0.3](https://www.youtube.com/watch?v=jGkyO6Is_aI)
- LaraDock [v0.1](https://www.youtube.com/watch?v=3YQsHe6oF80)
<a name="Requirements"></a>
## 依赖
- [Git](https://git-scm.com/downloads)
- [Docker](https://www.docker.com/products/docker/)
<a name="Installation"></a>
## 安装
1 - 克隆 `LaraDock` 仓库:
**A)** 如果你已经有一个Laravel项目,克隆这个仓库在到`Laravel`根目录
```bash
git submodule add https://github.com/laradock/laradock.git
```
>如果你不是使用Git管理Laravel项目,您可以使用 `git clone` 而不是`git submodule`
**B)** 如果你没有一个Laravel项目,你想Docker安装Laravel,克隆这个源在您的机器任何地方上:
```bash
git clone https://github.com/laradock/laradock.git
```
<a name="Usage"></a>
## 使用
**请在开始之前阅读:**
如果你正在使用**Docker Toolbox** (VM),选择以下任何一个方法:
- 更新到Docker [Native](https://www.docker.com/products/docker) Mac/Windows版本 (建议). 查看 [Upgrading LaraDock](#upgrading-laradock)
- 使用 LaraDock v3.* (访问 `LaraDock-ToolBox` [分支](https://github.com/laradock/laradock/tree/LaraDock-ToolBox)).
如果您使用的是**Docker Native**(Mac / Windows版本)甚至是Linux版本,通常可以继续阅读这个文档LaraDock v4以上版本将仅支持**Docker Native**。
<br>
<br>
1 - 运行容器: *(在运行`docker-compose`命令之前,确认你在 `laradock` 目录中*
**例子:** 运行 NGINX 和 MySQL:
```bash
docker-compose up -d nginx mysql
```
你可以从以下列表选择你自己的容器组合:
`nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `workspace`.
**说明**: `workspace``php-fpm` 将运行在大部分实例中, 所以不需要在 `up` 命令中加上它们.
<br>
2 - 进入 Workspace 容器, 执行像 (Artisan, Composer, PHPUnit, Gulp, ...)等命令
```bash
docker-compose exec workspace bash
```
<br />
增加 `--user=laradock` (例如 `docker-compose exec --user=laradock workspace bash`) 作为您的主机的用户创建的文件. (你可以从 `docker-compose.yml`修改 PUID (User id) 和 PGID (group id) 值 ).
<br>
3 - 编辑 Laravel 的配置.
如果你还没有安装Laravel项目请查看 [How to Install Laravel in a Docker Container](#Install-Laravel).
打开 Laravel的 `.env` 文件 然后 配置 你的`mysql``DB_HOST`:
```env
DB_HOST=mysql
```
<br>
4 - 打开浏览器访问localhost (`http://localhost/`).
<br>
**调试**: 如果你碰到任何问题,请查看 [调试](#debugging) 章节
如果你需要特别支持,请联系我,更多细节在[帮助 & 问题](#Help)章节
<br>
<a name="Documentation"></a>
## 文档
<a name="Docker"></a>
### [Docker]
<a name="List-current-running-Containers"></a>
### 列出正在运行的容器
```bash
docker ps
```
你也可以使用以下命令查看某项目的容器
```bash
docker-compose ps
```
<br>
<a name="Close-all-running-Containers"></a>
### 关闭所有容器
```bash
docker-compose stop
```
停止某个容器:
```bash
docker-compose stop {容器名称}
```
<br>
<a name="Delete-all-existing-Containers"></a>
### 删除所有容器
```bash
docker-compose down
```
小心这个命令,因为它也会删除你的数据容器。(如果你想保留你的数据你应该在上述命令后列出容器名称删除每个容器本身):*
<br>
<a name="Enter-Container"></a>
### 进入容器 (通过SSH 进入一个运行中的容器)
1 - 首先使用 `docker ps`命令查看正在运行的容器
2 - 进入某个容器使用:
```bash
docker-compose exec {container-name} bash
```
*例如: 进入 MySQL 容器*
```bash
docker-compose exec mysql bash
```
3 - 退出容器, 键入 `exit`.
<br>
<a name="Edit-Container"></a>
### 编辑默认容器配置
打开 `docker-compose.yml` 然后 按照你想的修改.
例如:
修改 MySQL 数据库名称:
```yml
environment:
MYSQL_DATABASE: laradock
```
修改 Redis 默认端口为 1111:
```yml
ports:
- "1111:6379"
```
<br>
<a name="Edit-a-Docker-Image"></a>
### 编辑Docker镜像
1 - 找到你想修改的镜像的 `dockerfile` ,
<br>
例如: `mysql``mysql/Dockerfile`.
2 - 按你所要的编辑文件.
3 - 重新构建容器:
```bash
docker-compose build mysql
```
更多信息在容器重建中 [点击这里](#Build-Re-build-Containers).
<br>
<a name="Build-Re-build-Containers"></a>
### 建立/重建容器
如果你做任何改变`dockerfile`确保你运行这个命令,可以让所有修改更改生效:
```bash
docker-compose build
```
选择你可以指定哪个容器重建(而不是重建所有的容器):
```bash
docker-compose build {container-name}
```
如果你想重建整个容器,你可能需要使用 `--no-cache` 选项 (`docker-compose build --no-cache {container-name}`).
<br>
<a name="Add-Docker-Images"></a>
### 增加更多软件 (Docker 镜像)
为了增加镜像(软件), 编辑 `docker-compose.yml` 添加容器细节, 你需要熟悉 [docker compose 文件语法](https://docs.docker.com/compose/compose-file/).
<br>
<a name="View-the-Log-files"></a>
### 查看日志文件
Nginx的日志在 `logs/nginx` 目录
然后查看其它容器日志(MySQL, PHP-FPM,...) 你可以运行:
```bash
docker logs {container-name}
```
<br>
<a name="Laravel"></a>
### [Laravel]
<a name="Install-Laravel"></a>
### 从Docker镜像安装Laravel
1 - 首先你需要进入 Workspace 容器.
2 - 安装 Laravel.
例如 使用 Composer
```bash
composer create-project laravel/laravel my-cool-app "5.2.*"
```
> 我们建议使用 `composer create-project` 替换Laravel 安装器去安装Laravel.
关于更多Laravel安装内容请 [点击这儿](https://laravel.com/docs/master#installing-laravel).
3 - 编辑 `docker-compose.yml` 映射新的应用目录:
系统默认LaraDock假定Laravel应用在LaraDock的父级目录中
By default LaraDock assumes the Laravel application is living in the parent directory of the laradock folder.
更新Laravel应用在 `my-cool-app` 目录中, 我们需要用 `../my-cool-app/:/var/www`替换 `../:/var/www` , 如下:
```yaml
application:
build: ./application
volumes:
- ../my-cool-app/:/var/www
```
4 - 进入目录下继续工作..
```bash
cd my-cool-app
```
5 - 回到LaraDock安装步骤,看看如何编辑`env`的文件。
<br>
<a name="Run-Artisan-Commands"></a>
### 运行 Artisan 命令
你可以从Workspace容器运行artisan命令和其他终端命令
1 - 确认Workspace容器已经运行.
```bash
docker-compose up -d workspace // ..and all your other containers
```
2 - 找到Workspace容器名称:
```bash
docker-compose ps
```
3 - 进入Workspace容器:
```bash
docker-compose exec workspace bash
```
增加 `--user=laradock` (例如 `docker-compose exec --user=laradock workspace bash`) 作为您的主机的用户创建的文件.
4 - 运行任何你想的 :)
```bash
php artisan
```
```bash
Composer update
```
```bash
phpunit
```
<br>
<a name="Use-Redis"></a>
### 使用 Redis
1 - 首先务必用 `docker-compose up` 命令运行 (`redis`)容器.
```bash
docker-compose up -d redis
```
2 - 打开你的Laravel的 `.env` 文件 然后 配置`redis``REDIS_HOST`
```env
REDIS_HOST=redis
```
如果在你的`.env` 文件没有找到`REDIS_HOST`变量。打开数据库配置文件`config/database.php`然后用`redis`替换默认IP`127.0.0.1`,例如:
```php
'redis' => [
'cluster' => false,
'default' => [
'host' => 'redis',
'port' => 6379,
'database' => 0,
],
],
```
3 - 启用Redis缓存或者开启Session管理也在`.env`文件中用`redis`替换默认`file`设置`CACHE_DRIVER``SESSION_DRIVER`
```env
CACHE_DRIVER=redis
SESSION_DRIVER=redis
```
4 - 最好务必通过Compose安装 `predis/predis``(~1.0)`:
```bash
composer require predis/predis:^1.0
```
5 - 你可以用以下代码在Laravel中手动测试
```php
\Cache::store('redis')->put('LaraDock', 'Awesome', 10);
```
<br>
<a name="Use-Mongo"></a>
### 使用 Mongo
1 - 首先在Workspace和PHP-FPM容器中安装`mongo`:
<br>
a) 打开 `docker-compose.yml` 文件
<br>
b) 在Workspace容器中找到`INSTALL_MONGO`选项:
<br>
c) 设置为 `true`
<br>
d) 在PHP-FPM容器中找到`INSTALL_MONGO` <br>
e) 设置为 `true`
相关配置项如下:
```yml
workspace:
build:
context: ./workspace
args:
- INSTALL_MONGO=true
...
php-fpm:
build:
context: ./php-fpm
args:
- INSTALL_MONGO=true
...
```
2 - 重建`Workspace、PHP-FPM`容器 `docker-compose build workspace php-fpm`
3 - 使用`docker-compose up` 命令运行MongoDB容器 (`mongo`)
```bash
docker-compose up -d mongo
```
4 - 在`config/database.php` 文件添加MongoDB的配置项:
```php
'connections' => [
'mongodb' => [
'driver' => 'mongodb',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', 27017),
'database' => env('DB_DATABASE', 'database'),
'username' => '',
'password' => '',
'options' => [
'database' => '',
]
],
// ...
],
```
5 - 打开Laravel的 `.env` 文件 然后 更新以下字段:
- 设置 `DB_HOST``mongo`的主机IP.
- 设置 `DB_PORT``27017`.
- 设置 `DB_DATABASE``database`.
6 - 最后务必通过Composer安装`jenssegers/mongodb`添加服务提供者Laravel Service Provider
```bash
composer require jenssegers/mongodb
```
更多细节内容 [点击这儿](https://github.com/jenssegers/laravel-mongodb#installation).
7 - 测试:
- 首先让你的模型继承Mongo的Eloquent Model. 查看 [文档](https://github.com/jenssegers/laravel-mongodb#eloquent).
- 进入Workspace容器.
- 迁移数据库 `php artisan migrate`.
<br>
<a name="PHP"></a>
### [PHP]
<a name="Install-PHP-Extensions"></a>
### 安装PHP拓展
安装PHP扩展之前,你必须决定你是否需要`FPM``CLI`,因为他们安装在不同的容器上,如果你需要两者,则必须编辑两个容器。
PHP-FPM拓展务必安装在 `php-fpm/Dockerfile-XX`. *(用你PHP版本号替换 XX)*.
<br>
PHP-CLI拓展应该安装到`workspace/Dockerfile`.
<br>
<a name="Change-the-PHP-FPM-Version"></a>
### 修改PHP-FPM版本
默认运行**PHP-FPM 7.0**版本.
>PHP-FPM负责服务你的应用代码,如果你是计划运行您的应用程序在不同PHP-FPM版本上则不需要更改PHP-CLI版本。
#### A) 切换版本 PHP `7.0` 到 PHP `5.6`
1 - 打开 `docker-compose.yml`
2 - 在PHP容器的 `Dockerfile-70`文件。
3 - 修改版本号, 用`Dockerfile-56`替换 `Dockerfile-70` , 例如:
```txt
php-fpm:
build:
context: ./php-fpm
dockerfile: Dockerfile-70
```
4 - 最后重建PHP容器
```bash
docker-compose build php
```
> 更多关于PHP基础镜像, 请访问 [PHP Docker官方镜像](https://hub.docker.com/_/php/).
#### B) 切换版本 PHP `7.0` 或 `5.6` 到 PHP `5.5`
我们已不在本地支持PHP5.5,但是你按照以下步骤获取:
1 - 克隆 `https://github.com/laradock/php-fpm`.
3 - 重命名 `Dockerfile-56``Dockerfile-55`.
3 - 编辑文件 `FROM php:5.6-fpm``FROM php:5.5-fpm`.
4 - 从 `Dockerfile-55`构建镜像.
5 - 打开 `docker-compose.yml` 文件.
6 - 将 `php-fpm` 指向你的 `Dockerfile-55` 文件.
<br>
<a name="Change-the-PHP-CLI-Version"></a>
### 修改 PHP-CLI 版本
默认运行**PHP-CLI 7.0**版本
>说明: PHP-CLI只用于执行Artisan和Composer命令不服务于你的应用代码这是PHP-FPM的工作所以编辑PHP-CLI的版本不是很重要。
PHP-CLI安装在Workspace容器改变PHP-CLI版本你需要编辑`workspace/Dockerfile`.
现在你必须手动修改PHP-FPM的`Dockerfile`或者创建一个新的。 (可以考虑贡献功能).
<br>
<a name="Install-xDebug"></a>
### 安装 xDebug
1 - 首先在Workspace和PHP-FPM容器安装 `xDebug`:
<br>
a) 打开 `docker-compose.yml` 文件
<br>
b) 在Workspace容器中找到 `INSTALL_XDEBUG` 选项
<br>
c) 改为 `true`
<br>
d) 在PHP-FPM容器中找到 `INSTALL_XDEBUG ` 选项<br>
e) 改为 `true`
例如:
```yml
workspace:
build:
context: ./workspace
args:
- INSTALL_XDEBUG=true
...
php-fpm:
build:
context: ./php-fpm
args:
- INSTALL_XDEBUG=true
...
```
2 - 重建容器 `docker-compose build workspace php-fpm`
<br>
<a name="Misc"></a>
### [Misc]
<br>
<a name="Use-custom-Domain"></a>
### 使用自定义域名 (替换Docker的IP)
假定你的自定义域名是 `laravel.dev`
1 - 打开 `/etc/hosts` 文件 添加以下内容映射你的localhost 地址 `127.0.0.1``laravel.dev` 域名
```bash
127.0.0.1 laravel.dev
```
2 - 打开你的浏览器访问 `{http://laravel.dev}`
你可以在nginx配置文件自定义服务器名称,如下:
```conf
server_name laravel.dev;
```
<br>
<a name="Enable-Global-Composer-Build-Install"></a>
### 安装全局Composer命令
为启用全局Composer Install在容器构建中允许你安装composer的依赖然后构建完成后就是可用的。
1 - 打开 `docker-compose.yml` 文件
2 - 在Workspace容器找到 `COMPOSER_GLOBAL_INSTALL` 选项并设置为 `true`
例如:
```yml
workspace:
build:
context: ./workspace
args:
- COMPOSER_GLOBAL_INSTALL=true
...
```
3 - 现在特价你的依赖关系到 `workspace/composer.json`
4 - 重建Workspace容器 `docker-compose build workspace`
<br>
<a name="Install-Prestissimo"></a>
### 安装 Prestissimo
[Prestissimo](https://github.com/hirak/prestissimo) 是一个平行安装功能的composer插件。
1 - 在安装期间使全局Composer Install 正在运行:
点击这个 [启用全局Composer构建安装](#Enable-Global-Composer-Build-Install) 然后继续步骤1、2.
2 - 添加 prestissimo 依赖到 Composer:
a - 现在打开 `workspace/composer.json` 文件
b - 添加 `"hirak/prestissimo": "^0.3"` 依赖
c - 重建Workspace容器 `docker-compose build workspace`
<br>
<a name="Install-Node"></a>
### 安装 Node + NVM
在Workspace 容器安装 NVM 和 NodeJS
1 - 打开 `docker-compose.yml` 文件
2 - 在Workspace容器找到 `INSTALL_NODE` 选项设为 `true`
例如:
```yml
workspace:
build:
context: ./workspace
args:
- INSTALL_NODE=true
...
```
3 - 重建容器 `docker-compose build workspace`
<br>
<a name="debugging"></a>
### Debugging
*这里是你可能面临的常见问题列表,以及可能的解决方案.*
#### 看到空白页而不是Laravel的欢迎页面!
在Laravel根目录运行下列命令:
```bash
sudo chmod -R 777 storage bootstrap/cache
```
#### 看到 "Welcome to nginx" 而不是 Laravel 应用!
在浏览器使用 `http://127.0.0.1` 替换 `http://localhost`.
#### 看到包含 `address already in use` 的错误
确保你想运行的服务端口(80, 3306, etc.)不是已经被其他程序使用,例如`apache`/`httpd`服务或其他安装的开发工具
<br>
<a name="upgrading-laradock"></a>
### LaraDock 升级
从Docker Toolbox (VirtualBox)移动到Docker Native (for Mac/Windows),需要从 LaraDock v3.* 升级到 v4.*:
1. 停止Docker虚拟机 `docker-machine stop {default}`
2. 安装 Docker [Mac](https://docs.docker.com/docker-for-mac/) 或 [Windows](https://docs.docker.com/docker-for-windows/).
3. 升级 LaraDock 到 `v4.*.*` (`git pull origin master`)
4. 像之前一样使用LaraDock: `docker-compose up -d nginx mysql`.
**说明:** 如果你面临任何上面的问题的最后一步:重建你所有的容器
`docker-compose build --no-cache`
"警告:容器数据可能会丢失!"
<br>
## 贡献
这个小项目是由一个有一个全职工作和很多的职责的人建立的,所以如果你喜欢这个项目,并且发现它需要一个bug修复或支持或新软件或升级任何容器,或其他任何. . 你是非常欢迎,欢迎毫不不犹豫地贡献吧:)
#### 阅读我们的 [贡献说明](https://github.com/laradock/laradock/blob/master/CONTRIBUTING.md)
<a name="Help"></a>
## 帮助 & 问题
从聊天室 [Gitter](https://gitter.im/LaraDock/laradock) 社区获取帮助和支持.
你也可以打开Github上的 [issue](https://github.com/laradock/laradock/issues) (将被贴上问题和答案) 或与大家讨论 [Gitter](https://gitter.im/LaraDock/laradock).
Docker或Laravel的特别帮助你可以在[Codementor.io](https://www.codementor.io/mahmoudz)上直接和项目创始人在线沟通
## 关于作者
**创始人:**
- [Mahmoud Zalt](https://github.com/Mahmoudz) (Twitter [@Mahmoud_Zalt](https://twitter.com/Mahmoud_Zalt))
**优秀的人:**
- [Contributors](https://github.com/laradock/laradock/graphs/contributors)
- [Supporters](https://github.com/laradock/laradock/issues?utf8=%E2%9C%93&q=)
## 许可证
[MIT License](https://github.com/laradock/laradock/blob/master/LICENSE) (MIT)

884
README.md
View File

@ -1,880 +1,28 @@
# LaraDock
# Laradock
> Use Docker first and learn about it later.
[![forthebadge](http://forthebadge.com/images/badges/built-by-developers.svg)](http://zalt.me)
Laradock is a Docker PHP development environment that facilitate running **PHP** Apps on **Docker**.
LaraDock helps you run your **Laravel** App on **Docker** real quick.
<br>
It's like Laravel Homestead but for Docker instead of Vagrant.
![](http://s18.postimg.org/fhykchl09/new_laradock_cover.png)
<br>
## Contents
- [Intro](#Intro)
- [Features](#features)
- [Supported Containers](#Supported-Containers)
- [What is Docker](#what-is-docker)
- [What is Laravel](#what-is-laravel)
- [Why Docker not Vagrant](#why-docker-not-vagrant)
- [LaraDock VS Homestead](#laradock-vs-homestead)
- [Demo Video](#Demo)
- [Requirements](#Requirements)
- [Installation](#Installation)
- [Usage](#Usage)
- [Documentation](#Documentation)
- [Docker](#Docker)
- [List current running Containers](#List-current-running-Containers)
- [Close all running Containers](#Close-all-running-Containers)
- [Delete all existing Containers](#Delete-all-existing-Containers)
- [Enter a Container (SSH into a running Container)](#Enter-Container)
- [Edit default container configuration](#Edit-Container)
- [Edit a Docker Image](#Edit-a-Docker-Image)
- [Build/Re-build Containers](#Build-Re-build-Containers)
- [Add more Software's (Docker Images)](#Add-Docker-Images)
- [View the Log files](#View-the-Log-files)
- [Laravel](#Laravel):
- [Install Laravel from a Docker Container](#Install-Laravel)
- [Run Artisan Commands](#Run-Artisan-Commands)
- [Use Redis](#Use-Redis)
- [Use Mongo](#Use-Mongo)
- [PHP](#PHP)
- [Install PHP Extensions](#Install-PHP-Extensions)
- [Change the PHP-FPM Version](#Change-the-PHP-FPM-Version)
- [Change the PHP-CLI Version](#Change-the-PHP-CLI-Version)
- [Misc](#Misc)
- [Run a Docker Virtual Host](#Run-Docker-Virtual-Host)
- [Find your Docker IP Address](#Find-Docker-IP-Address)
- [Use custom Domain](#Use-custom-Domain)
- [Debugging](#debugging)
- [Help & Questions](#Help)
<a name="Intro"></a>
## Intro
LaraDock strives to make the development experience easier.
It contains pre-packaged Docker Images that provides you a wonderful development environment without requiring you to install PHP, NGINX, MySQL, REDIS, and any other software on your local machine.
**Usage Overview:** Run `NGINX`, `MySQL` and `Redis`.
```shell
docker-compose up nginx mysql redis
```
<a name="features"></a>
### Features
- Easy switch between PHP versions: 7.0 - 5.6 - 5.5 ...
- Choose your favorite database engine: MySQL - Postgres - Redis ...
- Run your own combination of software's: Memcached - MariaDB ...
- Every software runs on a separate container: PHP-FPM - NGINX ...
- Easy to customize any container, with simple edit to the `dockerfile`.
- All Images extends from an official base Image. (Trusted base Images).
- Pre-configured Nginx for Laravel.
- Data container, to keep Data safe and accessible.
- Easy to apply configurations inside containers.
- Clean and well structured Dockerfiles (`dockerfile`).
- Latest version of the Docker Compose file (`docker-compose`).
- Everything is visible and editable.
<a name="Supported-Containers"></a>
### Supported Containers
- PHP-FPM (7.0 - 5.6 - 5.5)
- NGINX
- MySQL
- PostgreSQL
- MariaDB
- Neo4j
- MongoDB
- Redis
- Memcached
- Beanstalkd
- Beanstalkd Console
- Workspace (contains: Composer, PHP7-CLI, Laravel Installer, Git, Node, Gulp, Bower, SQLite, Vim, Nano and cURL)
- Data *(Databases Data Container)*
- Application *(Application Code Container)*
>If you can't find your container, build it yourself and add it to this list. Contributions are welcomed :)
<a name="what-is-docker"></a>
### What is Docker?
[Docker](https://www.docker.com) is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of [operating-system-level virtualization](https://en.wikipedia.org/wiki/Operating-system-level_virtualization) on Linux, Mac OS and Windows.
<a name="what-is-laravel"></a>
### What is Laravel?
Seriously!!!
<a name="why-docker-not-vagrant"></a>
### Why Docker not Vagrant!?
[Vagrant](https://www.vagrantup.com) creates Virtual Machines in minutes while Docker creates Virtual Containers in seconds.
Instead of providing a full Virtual Machines, like you get with Vagrant, Docker provides you **lightweight** Virtual Containers, that share the same kernel and allow to safely execute independent processes.
In addition to the speed, Docker gives tens of features that cannot be achieved with Vagrant.
Most importantly Docker can run on Development and on Production (same environment everywhere). While Vagrant is designed for Development only, (so you have to re-provision your server on Production every time).
<a name="laradock-vs-homestead"></a>
### LaraDock VS Homestead
LaraDock and [Homestead](https://laravel.com/docs/master/homestead) both gives you a complete virtual development environments. (Without the need to install and configure every single software on your own Operating System).
- Homestead is a tool that controls Vagrant for you (using Homestead special commands). And Vagrant manages your Virtual Machine.
- LaraDock is a tool that controls Docker for you (using Docker Compose official commands). And Docker manages you Virtual Containers.
Running a virtual Container is much faster than running a full virtual Machine.
<br>Thus **LaraDock is much faster than Homestead**.
<a name="Requirements"></a>
## Requirements
| Linux | Windows & MAC |
|-----------------------------------------------------------------------------------------|---------------------------------------------------------|
| [Laravel](https://laravel.com/docs/master/installation) | [Laravel](https://laravel.com/docs/master/installation) |
| [Git](https://git-scm.com/downloads) | [Git](https://git-scm.com/downloads) |
| [Docker Engine](https://docs.docker.com/engine/installation/linux/ubuntulinux) | [Docker Toolbox](https://www.docker.com/toolbox) |
| [Docker Compose](https://docs.docker.com/compose/install) | |
<a name="Demo"></a>
## Demo Video
What's better than a [**Demo Video**](https://www.youtube.com/watch?v=-DamFMczwDA) :)
<a name="Installation"></a>
## Installation
1 - Clone the `LaraDock` repository.
**A)** If you already have a Laravel project, clone this repository on your `Laravel` root direcotry:
```bash
git submodule add https://github.com/LaraDock/laradock.git
```
>If you are not already using Git for your Laravel project, you can use `git clone` instead of `git submodule`.
**B)** If you don't have a Laravel project, and you want to install Laravel from Docker, clone this repo anywhere on your machine:
```bash
git clone https://github.com/LaraDock/laradock.git
```
<a name="Usage"></a>
## Usage
1 - For **Windows & MAC** users only: If you are not using the native Docker-Engine `Beta`, make sure you have a running Docker Virtual Host on your machine.
[How to run a Docker Virtual Host?](#Run-Docker-Virtual-Host)
(**Linux** users don't need a Virtual Host, so skip this step).
<br>
2 - Run some Containers: *(Make sure you are in the `laradock` folder before running the `docker-compose` commands).*
**Example:** Running NGINX and MySQL:
```bash
docker-compose up -d nginx mysql
```
You can select your own combination of container form this list:
`nginx`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `memcached`, `beanstalkd`, `beanstalkd-console`, `workspace`, `data`, `php-fpm`, `application`.
**Note**: `workspace`, `data`, `php-fpm` and `application` will run automatically in most of the cases.
<br>
3 - Enter the Workspace container, to execute commands like (Artisan, Composer, PHPUnit, Gulp, ...).
```bash
docker exec -it {Workspace-Container-Name} bash
```
Replace `{Workspace-Container-Name}` with your Workspace container name.
<br>
To find the containers names type `docker-compose ps`.
<br>
4 - Edit the Laravel configurations.
If you don't have a Laravel project installed yet, see [How to Install Laravel in a Docker Container](#Install-Laravel).
Open your Laravel's `.env` file and set the `DB_HOST` to your `{Docker-IP}`:
```env
DB_HOST=xxx.xxx.xxx.xxx
```
[How to find my Docker IP Address?](#Find-Docker-IP-Address)
<br>
5 - Open your browser and visit your `{Docker-IP}` address (`http://xxx.xxx.xxx.xxx`).
<br>
**Debugging**: if you are facing any problem here check the [Debugging](#debugging) section.
If you need a special support. Contact me, more details in the [Help & Questions](#Help) section.
<br>
<a name="Documentation"></a>
## Documentation
<a name="Docker"></a>
### [Docker]
<a name="List-current-running-Containers"></a>
### List current running Containers
```bash
docker ps
```
You can also use the this command if you want to see only this project containers:
```bash
docker-compose ps
```
<br>
<a name="Close-all-running-Containers"></a>
### Close all running Containers
```bash
docker-compose stop
```
To stop single container do:
```bash
docker-compose stop {container-name}
```
<br>
<a name="Delete-all-existing-Containers"></a>
### Delete all existing Containers
```bash
docker-compose down
```
*Note: Careful with this command as it will delete your Data Volume Container as well. (if you want to keep your Database data than you should stop each container by itself as follow):*
<br>
<a name="Enter-Container"></a>
### Enter a Container (SSH into a running Container)
1 - first list the current running containers with `docker ps`
2 - enter any container using:
```bash
docker exec -it {container-name} bash
```
3 - to exit a container, type `exit`.
<br>
<a name="Edit-Container"></a>
### Edit default container configuration
Open the `docker-compose.yml` and change anything you want.
Examples:
Change MySQL Database Name:
```yml
environment:
MYSQL_DATABASE: laradock
```
Change Redis defaut port to 1111:
```yml
ports:
- "1111:6379"
```
<br>
<a name="Edit-a-Docker-Image"></a>
### Edit a Docker Image
1 - Find the `dockerfile` of the image you want to edit,
<br>
example for `mysql` it will be `mysql/Dockerfile`.
2 - Edit the file the way you want.
3 - Re-build the container:
```bash
docker-compose build mysql
```
*If you find any bug or you have and suggestion that can improve the performance of any image, please consider contributing. Thanks in advance.*
<br>
<a name="Build-Re-build-Containers"></a>
### Build/Re-build Containers
If you do any change to any `dockerfile` make sure you run this command, for the changes to take effect:
```bash
docker-compose build
```
Optionally you can specify which container to rebuild (instead of rebuilding all the containers):
```bash
docker-compose build {container-name}
```
<br>
<a name="Add-Docker-Images"></a>
### Add more Software's (Docker Images)
To add an image (software), just edit the `docker-compose.yml` and add your container details, to do so you need to be familiar with the [docker compose file syntax](https://docs.docker.com/compose/compose-file/).
<br>
<a name="View-the-Log-files"></a>
### View the Log files
The Nginx Log file is stored in the `logs/nginx` directory.
However to view the logs of all the other containers (MySQL, PHP-FPM,...) you can run this:
```bash
docker logs {container-name}
```
<br>
<a name="Laravel"></a>
### [Laravel]
<a name="Install-Laravel"></a>
### Install Laravel from a Docker Container
1 - First you need to enter the Workspace Container.
2 - Install Laravel.
Example using Composer
```bash
composer create-project laravel/laravel my-cool-app "5.2.*"
```
> We recommand using `composer create-project` instead of the Laravel installer, to install Laravel.
For more about the Laravel installation click [here](https://laravel.com/docs/master#installing-laravel).
3 - Edit `docker-compose.yml` to Map the new application path:
By default LaraDock assumes the Laravel application is living in the parent directory of the laradock folder.
Since the new Laravel application is in the `my-cool-app` folder, we need to replace `../:/var/www/laravel` with `../my-cool-app/:/var/www/laravel`, as follow:
```yaml
application:
build: ./application
volumes:
- ../my-cool-app/:/var/www/laravel
```
4 - Go to that folder and start working..
```bash
cd my-cool-app
```
<br>
<a name="Run-Artisan-Commands"></a>
### Run Artisan Commands
You can run artisan commands and many other Terminal commands from the Workspace container.
1 - Make sure you have the workspace container running.
```bash
docker-compose up -d workspace // ..and all your other containers
```
2 - Find the Workspace container name:
```bash
docker-compose ps
```
3 - Enter the Workspace container:
```bash
docker exec -it {workspace-container-name} bash
```
4 - Run anything you want :)
```bash
php artisan
```
```bash
Composer update
```
```bash
phpunit
```
<br>
<a name="Use-Redis"></a>
### Use Redis
1 - First make sure you run the Redis Container (`redis`) with the `docker-compose up` command.
```bash
docker-compose up -d redis
```
2 - Open your Laravel's `.env` file and set the `REDIS_HOST` to your `Docker-IP` instead of the default `127.0.0.1` IP.
```env
REDIS_HOST=xxx.xxx.xxx.xxx
```
If you don't find the `REDIS_HOST` variable in your `.env` file. Go to the database config file `config/database.php` and replace the default `127.0.0.1` IP with your `Docker-IP` for Redis like this:
```php
'redis' => [
'cluster' => false,
'default' => [
'host' => 'xxx.xxx.xxx.xxx',
'port' => 6379,
'database' => 0,
],
],
```
3 - To enable Redis Caching and/or for Sessions Management. Also from the `.env` file set `CACHE_DRIVER` and `SESSION_DRIVER` to `redis` instead of the default `file`.
```env
CACHE_DRIVER=redis
SESSION_DRIVER=redis
```
4 - Finally make sure you have the `predis/predis` package `(~1.0)` installed via Composer:
```bash
composer require predis/predis:^1.0
```
5 - You can manually test it from Laravel with this code:
```php
\Cache::store('redis')->put('LaraDock', 'Awesome', 10);
```
<br>
<a name="Use-Mongo"></a>
### Use Mongo
1 - First make sure you run the MongoDB Container (`mongo`) with the `docker-compose up` command.
```bash
docker-compose up -d mongo
```
2 - Add the MongoDB configurations to the `config/database.php` config file:
```php
'connections' => [
'mongodb' => [
'driver' => 'mongodb',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', 27017),
'database' => env('DB_DATABASE', 'database'),
'username' => '',
'password' => '',
'options' => [
'database' => '',
]
],
// ...
],
```
3 - Open your Laravel's `.env` file and update the following variables:
- set the `DB_HOST` to your `Docker-IP`.
- set the `DB_PORT` to `27017`.
- set the `DB_DATABASE` to `database`.
4 - Finally make sure you have the `jenssegers/mongodb` package installed via Composer and its Service Provider is added.
```bash
composer require jenssegers/mongodb
```
More details about this [here](https://github.com/jenssegers/laravel-mongodb#installation).
5 - Test it:
- First let your Models extend from the Mongo Eloquent Model. Check the [documentation](https://github.com/jenssegers/laravel-mongodb#eloquent).
- Enter the Workspace Continer `docker exec -it laradock_workspace_1 bash`.
- Migrate the Database `php artisan migrate`.
<br>
<a name="PHP"></a>
### [PHP]
<a name="Install-PHP-Extensions"></a>
### Install PHP Extensions
Before installing PHP extensions, you have to decide whether you need for the `FPM` or `CLI` because each lives on a different container, if you need it for both you have to edit both containers.
The PHP-FPM extensions should be installed in `php-fpm/Dockerfile-XX`. *(replace XX with your default PHP version number)*.
<br>
The PHP-CLI extensions should be installed in `workspace/Dockerfile`.
<br>
<a name="Change-the-PHP-FPM-Version"></a>
### Change the PHP-FPM Version
By default **PHP-FPM 7.0** is running.
>The PHP-FPM is responsible of serving your application code, you don't have to change the PHP-CLI version if you are planing to run your application on different PHP-FPM version.
1 - Open the `docker-compose.yml`.
2 - Search for `Dockerfile-70` in the PHP container section.
3 - Change the version number.
<br>
Example to select version 5.6 instead of 7.0 you have to replace `Dockerfile-70` with `Dockerfile-56`.
Sample:
```txt
php-fpm:
build:
context: ./php-fpm
dockerfile: Dockerfile-70
```
Supported Versions:
- For (PHP 7.0.*) use `Dockerfile-70`
- For (PHP 5.6.*) use `Dockerfile-56`
- For (PHP 5.5.*) use `Dockerfile-55`
4 - Finally rebuild the container
```bash
docker-compose build php
```
For more details about the PHP base image, visit the [official PHP docker images](https://hub.docker.com/_/php/).
<br>
<a name="Change-the-PHP-CLI-Version"></a>
### Change the PHP-CLI Version
By default **PHP-CLI 7.0** is running.
>Note: it's not very essential to edit the PHP-CLI verion. The PHP-CLI is only used for the Artisan Commands & Composer. It doesn't serve your Application code, this is the PHP-FPM job.
The PHP-CLI is installed in the Workspace container. To change the PHP-CLI version you need to edit the `workspace/Dockerfile`.
Right now you have to manually edit the `Dockerfile` or create a new one like it's done for the PHP-FPM. (consider contributing).
<br>
<a name="Misc"></a>
### [Misc]
<a name="Run-Docker-Virtual-Host"></a>
### Run a Docker Virtual Host
These steps are only for **Windows & MAC** users *(Linux users don't need a virtual host)*:
1 - Run the default Host:
```bash
docker-machine start default
```
* If the host "default" does not exist, create one using the command below, else skip it:
* ```bash
docker-machine create -d virtualbox default
```
2 - Run this command to configure your shell:
```bash
eval $(docker-machine env)
```
<br>
<a name="Find-Docker-IP-Address"></a>
### Find your Docker IP Address
**On Windows & MAC:**
Run this command in your terminal:
```bash
docker-machine ip default
```
If your Host name is different then `default`, you have to specify it (`docker-machine ip my-host`).
*(The default IP is 192.168.99.100)*
<br>
> **boot2docker** users: run `boot2docker ip` *(when boot2docker is up)*.
<br>
**On Linux:**
Run this command in your terminal:
```shell
ifconfig docker0 | grep 'inet' | cut -d: -f2 | awk '{ print $1}' | head -n1
```
*(The default IP is 172.17.0.1)*
<br>
<a name="Use-custom-Domain"></a>
### Use custom Domain (instead of the Docker IP)
Assuming your custom domain is `laravel.dev` and your current `Docker-IP` is `xxx.xxx.xxx.xxx`.
1 - Open your `/etc/hosts` file and map your `Docker IP` to the `laravel.dev` domain, by adding the following:
```bash
xxx.xxx.xxx.xxx laravel.dev
```
2 - Open your Laravel's `.env` file and replace the `127.0.0.1` default values with your `{Docker-IP}`.
<br>
Example:
```env
DB_HOST=xxx.xxx.xxx.xxx
```
3 - Open your browser and visit `{http://laravel.dev}`
Optionally you can define the server name in the nginx config file, like this:
```conf
server_name laravel.dev;
```
<br>
<a name="debugging"></a>
### Debugging
*Here's a list of the common problems you might face, and the possible solutions.*
#### + I see a blank (white) page instead of the Laravel 'Welcome' page!
run this command from the Laravel root directory:
```bash
sudo chmod -R 777 storage bootstrap/cache
```
#### + I see "Welcome to nginx" instead of the Laravel App!
use `http://127.0.0.1` instead of `http://localhost` in your browser.
<br>
## Contributing
This little project was built by one man who has a full time job and many responsibilities, so if you like this project and you find that it needs a bug fix or support for new software or upgrade any container, or anything else.. Do not hesitate to contribute, you are more than welcome :)
<a name="Help"></a>
## Help & Questions
If you need any help with Docker and Laravel, you can schedule a live call with the creator of this project at [Codementor.io](https://www.codementor.io/mahmoudz), He would love to help.
For general questions you can open [Issues](https://github.com/laradock/laradock/issues) here on Github (We will label them as questions).
Additionally, you can contact Mahmoud Zalt (the creator of this project) via a direct message on LaraChat, (his username is `mahmoud_zalt`). Or send him an email (`mahmoud@zalt.me`).
[**Full Documentation Here**](http://laradock.io)
## Credits
- [Mahmoud Zalt](https://github.com/Mahmoudz) (Twitter [@Mahmoud_Zalt](https://twitter.com/Mahmoud_Zalt))
- [Awesome list of contributors](https://github.com/LaraDock/laradock/graphs/contributors)
**Super Admins:**
- [Mahmoud Zalt](https://github.com/Mahmoudz) (mahmoudz) [ [Twitter](https://twitter.com/Mahmoud_Zalt) | [Personal Site](http://zalt.me) | [LinkedIn](https://www.linkedin.com/in/mahmoudzalt) ]
- [Bo-Yi Wu](https://github.com/appleboy) (appleboy) [ [Twitter](https://twitter.com/appleboy) ]
- [Philippe Trépanier](https://github.com/philtrep) (philtrep)
- [Mike Erickson](https://github.com/mikeerickson) (mikeerickson)
- Join Us!
**Amazing Contributors:**
- [Contributors](https://github.com/laradock/laradock/graphs/contributors)
## License

213
_guides/digital_ocean.md Normal file
View File

@ -0,0 +1,213 @@
#### Install Docker
```
Login Digital Ocean
Add Droplet
1 Click Install docker
Choose Droplet
reset ROOT password
check email
```
#### SSH to your Server
```
ssh root@ipaddress
```
you will be prompt of that password.
type the password you receive in your email
then it will ask to you to change a new password
just change it to the custom root password you want
After SSH
you can check that docker command is working by typing
```
$root@midascode:~# docker
```
#### Set Up Your Laravel Project
```
$root@midascode:~# apt-get install git
$root@midascode:~# git clone https://github.com/laravel/laravel
$root@midascode:~# cd laravel
$root@midascode:~/laravel/ git submodule add https://github.com/LaraDock/laradock.git
$root@midascode:~/laravel/ cd laradock
```
#### Install docker-compose command
```
$root@midascode:~/laravel/laradock# curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
$root@midascode:~/chmod +x /usr/local/bin/docker-compose
```
#### Create Your LaraDock Containers
```
$root@midascode:~/laravel/laradock# docker-compose up -d nginx mysql
```
#### Go to Your Workspace
```
docker-compose exec workspace bash
```
#### Install laravel Dependencies, Add .env , generate Key and give proper permission certain folder
```
$ root@0e77851d27d3:/var/www# composer install
$ root@0e77851d27d3:/var/www# cp .env.example .env
$ root@0e77851d27d3:/var/www# php artisan key:generate
$ root@0e77851d27d3:/var/www# exit
$root@midascode:~/laravel/laradock# cd ..
$root@midascode:~/laravel# sudo chmod -R 777 storage bootstrap/cache
```
you can then view your laravel site at your ipaddress
for example
```
192.168.1.1
```
You will see there Laravel Default Welcome Page
but if you need to view on your custom domain name
which you would.
#### Using Your Own Domain Name
login to your DNS provider
Godaddy, Namecheap what ever...
And Point the Custom Domain Name Server to
```
ns1.digitalocean.com
ns2.digitalocean.com
ns3.digitalocean.com
```
In Your Digital Ocean Account go to
```
https://cloud.digitalocean.com/networking/domains
```
add your domain name and choose the server ip you provision earlier
#### Serve Site With NGINX (HTTP ONLY)
Go back to command line
```
$root@midascode:~/laravel/laradock# cd nginx
$root@midascode:~/laravel/laradock/nginx# vim laravel.conf
```
remove default_server
```
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
```
and add server_name (your custom domain)
```
listen 80;
listen [::]:80 ipv6only=on;
server_name yourdomain.com;
```
#### Rebuild Your Nginx
```
$root@midascode:~/laravel/laradock/nginx# docker-compose down
$root@midascode:~/laravel/laradock/nginx# docker-compose build nginx
```
#### Re Run Your Containers MYSQL and NGINX
```
$root@midascode:~/laravel/laradock/nginx# docker-compose up -d nginx mysql
```
###### View Your Site with HTTP ONLY (http://yourdomain.com)
#### Run Site on SSL with Let's Encrypt Certificate
###### Note: You need to Use Caddy here Instead of Nginx
###### To go Caddy Folders and Edit CaddyFile
```
$root@midascode:~/laravel/laradock# cd caddy
$root@midascode:~/laravel/laradock/caddy# vim Caddyfile
```
Remove 0.0.0.0:80
```
0.0.0.0:80
root /var/www/public
```
and replace with your https://yourdomain.com
```
https://yourdomain.com
root /var/www/public
```
uncomment tls
```
#tls self-signed
```
and replace self-signed with your email address
```
tls midascodebreaker@gmai.com
```
This is needed Prior to Creating Let's Encypt
#### Run Your Caddy Container without the -d flag and Generate SSL with Let's Encrypt
```
$root@midascode:~/laravel/laradock/caddy# docker-compose up caddy
```
you will be prompt here to enter your email... you may enter it or not
```
Attaching to laradock_mysql_1, laradock_caddy_1
caddy_1 | Activating privacy features...
caddy_1 | Your sites will be served over HTTPS automatically using Let's Encrypt.
caddy_1 | By continuing, you agree to the Let's Encrypt Subscriber Agreement at:
caddy_1 | https://letsencrypt.org/documents/LE-SA-v1.0.1-July-27-2015.pdf
caddy_1 | Activating privacy features... done.
caddy_1 | https://yourdomain.com
caddy_1 | http://yourdomain.com
```
After it finish Press Ctrl + C to exit ...
#### Stop All Containers and ReRun Caddy and Other Containers on Background
```
$root@midascode:~/laravel/laradock/caddy# docker-compose down
$root@midascode:~/laravel/laradock/caddy# docker-compose up -d mysql caddy
```
View your Site in the Browser Securely Using HTTPS (https://yourdomain.com)
##### Note that Certificate will be Automatically Renew By Caddy
>References:
>
- [https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04)
- [https://www.digitalocean.com/products/one-click-apps/docker/](https://www.digitalocean.com/products/one-click-apps/docker/)
- [https://docs.docker.com/engine/installation/linux/ubuntulinux/](https://docs.docker.com/engine/installation/linux/ubuntulinux/)
- [https://docs.docker.com/compose/install/](https://docs.docker.com/compose/install/)
- [https://caddyserver.com/docs/automatic-https](https://caddyserver.com/docs/automatic-https)
- [https://caddyserver.com/docs/tls](https://caddyserver.com/docs/tls)
- [https://caddyserver.com/docs/caddyfile](https://caddyserver.com/docs/caddyfile)

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

302
_guides/phpstorm.md Normal file
View File

@ -0,0 +1,302 @@
# PHPStorm Debugging Guide
- [Intro](#Intro)
- [Installation](#Installation)
- [Customize laradock/docker-compose.yml](#CustomizeDockerCompose)
- [Clean House](#InstallCleanHouse)
- [LaraDock Dial Tone](#InstallLaraDockDialTone)
- [hosts](#AddToHosts)
- [Firewall](#FireWall)
- [Enable xDebug on php-fpm](#enablePhpXdebug)
- [PHPStorm Settings](#InstallPHPStorm)
- [Configs](#InstallPHPStormConfigs)
- [Usage](#Usage)
- [Laravel](#UsageLaravel)
- [Run ExampleTest](#UsagePHPStormRunExampleTest)
- [Debug ExampleTest](#UsagePHPStormDebugExampleTest)
- [Debug Web Site](#UsagePHPStormDebugSite)
- [SSH into workspace](#SSHintoWorkspace)
- [KiTTY](#InstallKiTTY)
<a name="Intro"></a>
## Intro
Wiring up [Laravel](https://laravel.com/), [LaraDock](https://github.com/LaraDock/laradock) [Laravel+Docker] and [PHPStorm](https://www.jetbrains.com/phpstorm/) to play nice together complete with remote xdebug'ing as icing on top! Although this guide is based on `PHPStorm Windows`,
you should be able to adjust accordingly. This guide was written based on Docker for Windows Native.
<a name="Installation"></a>
## Installation
- This guide assumes the following:
- you have already installed and are familiar with Laravel, LaraDock and PHPStorm.
- you have installed Laravel as a parent of `laradock`. This guide assumes `/c/_dk/laravel`.
<a name="AddToHosts"></a>
## hosts
- Add `laravel` to your hosts file located on Windows 10 at `C:\Windows\System32\drivers\etc\hosts`. It should be set to the IP of your running container. Mine is: `10.0.75.2`
On Windows you can find it by opening Windows `Hyper-V Manager`.
- ![Windows Hyper-V Manager](photos/PHPStorm/Settings/WindowsHyperVManager.png)
- [Hosts File Editor](https://github.com/scottlerch/HostsFileEditor) makes it easy to change your hosts file.
- Set `laravel` to your docker host IP. See [Example](photos/SimpleHostsEditor/AddHost_laravel.png).
<a name="FireWall"></a>
## Firewall
Your PHPStorm will need to be able to receive a connection from PHP xdebug either your running workspace or php-fpm containers on port 9000. This means that your Windows Firewall should either enable connections from the Application PHPStorm OR the port.
- It is important to note that if the Application PHPStorm is NOT enabled in the firewall, you will not be able to recreate a rule to override that.
- Also be aware that if you are installing/upgrade different versions of PHPStorm, you MAY have orphaned references to PHPStorm in your Firewall! You may decide to remove orphaned references however in either case, make sure that they are set to receive public TCP traffic.
### Edit laradock/docker-compose.yml
Set the following variables:
```
### Workspace Utilities Container ###########################
workspace:
build:
context: ./workspace
args:
- INSTALL_XDEBUG=true
- INSTALL_WORKSPACE_SSH=true
...
### PHP-FPM Container #######################################
php-fpm:
build:
context: ./php-fpm
args:
- INSTALL_XDEBUG=true
...
```
### Edit xdebug.ini files
- `laradock/workspace/xdebug.ini`
- `laradock/php-fpm/xdebug.ini`
Set the following variables:
```
xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.remote_connect_back=1
xdebug.cli_color=1
```
<a name="InstallCleanHouse"></a>
### Need to clean house first?
Make sure you are starting with a clean state. For example, do you have other LaraDock containers and images?
Here are a few things I use to clean things up.
- Delete all containers using `grep laradock_` on the names, see: [Remove all containers based on docker image name](https://linuxconfig.org/remove-all-containners-based-on-docker-image-name).
`docker ps -a | awk '{ print $1,$2 }' | grep laradock_ | awk '{print $1}' | xargs -I {} docker rm {}`
- Delete all images containing `laradock`.
`docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}`
**Note:** This will only delete images that were built with `LaraDock`, **NOT** `laradock/*` which are pulled down by `LaraDock` such as `laradock/workspace`, etc.
**Note:** Some may fail with:
`Error response from daemon: conflict: unable to delete 3f38eaed93df (cannot be forced) - image has dependent child images`
- I added this to my `.bashrc` to remove orphaned images.
```
dclean() {
processes=`docker ps -q -f status=exited`
if [ -n "$processes" ]; thend
docker rm $processes
fi
images=`docker images -q -f dangling=true`
if [ -n "$images" ]; then
docker rmi $images
fi
}
```
- If you frequently switch configurations for LaraDock, you may find that adding the following and added to your `.bashrc` or equivalent useful:
```
# remove laravel* containers
# remove laravel_* images
dcleanlaradockfunction()
{
echo 'Removing ALL containers associated with laradock'
docker ps -a | awk '{ print $1,$2 }' | grep laradock | awk '{print $1}' | xargs -I {} docker rm {}
# remove ALL images associated with laradock_
# does NOT delete laradock/* which are hub images
echo 'Removing ALL images associated with laradock_'
docker images | awk '{print $1,$2,$3}' | grep laradock_ | awk '{print $3}' | xargs -I {} docker rmi {}
echo 'Listing all laradock docker hub images...'
docker images | grep laradock
echo 'dcleanlaradock completed'
}
# associate the above function with an alias
# so can recall/lookup by typing 'alias'
alias dcleanlaradock=dcleanlaradockfunction
```
<a name="InstallLaraDockDialTone"></a>
#### Let's get a dial-tone with Laravel
```
# barebones at this point
docker-compose up -d nginx mysql
# run
docker-compose ps
# Should see:
Name Command State Ports
-----------------------------------------------------------------------------------------------------------
laradock_mysql_1 docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp
laradock_nginx_1 nginx Up 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
laradock_php-fpm_1 php-fpm Up 9000/tcp
laradock_volumes_data_1 true Exit 0
laradock_volumes_source_1 true Exit 0
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp
```
<a name="enablePhpXdebug"></a>
#### Enable xDebug on php-fpm
In a host terminal sitting in the laradock folder, run: `./xdebugPhpFpm status`
You should see something like the following:
```
xDebug status
laradock_php-fpm_1
PHP 7.0.9 (cli) (built: Aug 10 2016 19:45:48) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Xdebug v2.4.1, Copyright (c) 2002-2016, by Derick Rethans
```
Other commands include `./xdebugPhpFpm start | stop`.
If you have enabled `xdebug=true` in `docker-compose.yml/php-fpm`, `xdebug` will already be running when
`php-fpm` is started and listening for debug info on port 9000.
<a name="InstallPHPStormConfigs"></a>
#### PHPStorm Settings
- Here are some settings that are known to work:
- `Settings/BuildDeploymentConnection`
- ![Settings/BuildDeploymentConnection](photos/PHPStorm/Settings/BuildDeploymentConnection.png)
- `Settings/BuildDeploymentConnectionMappings`
- ![Settings/BuildDeploymentConnectionMappings](photos/PHPStorm/Settings/BuildDeploymentConnectionMappings.png)
- `Settings/BuildDeploymentDebugger`
- ![Settings/BuildDeploymentDebugger](photos/PHPStorm/Settings/BuildDeploymentDebugger.png)
- `Settings/EditRunConfigurationRemoteWebDebug`
- ![Settings/EditRunConfigurationRemoteWebDebug](photos/PHPStorm/Settings/EditRunConfigurationRemoteWebDebug.png)
- `Settings/EditRunConfigurationRemoteExampleTestDebug`
- ![Settings/EditRunConfigurationRemoteExampleTestDebug](photos/PHPStorm/Settings/EditRunConfigurationRemoteExampleTestDebug.png)
- `Settings/LangsPHPDebug`
- ![Settings/LangsPHPDebug](photos/PHPStorm/Settings/LangsPHPDebug.png)
- `Settings/LangsPHPInterpreters`
- ![Settings/LangsPHPInterpreters](photos/PHPStorm/Settings/LangsPHPInterpreters.png)
- `Settings/LangsPHPPHPUnit`
- ![Settings/LangsPHPPHPUnit](photos/PHPStorm/Settings/LangsPHPPHPUnit.png)
- `Settings/LangsPHPServers`
- ![Settings/LangsPHPServers](photos/PHPStorm/Settings/LangsPHPServers.png)
- `RemoteHost`
To switch on this view, go to: `Menu/Tools/Deployment/Browse Remote Host`.
- ![RemoteHost](photos/PHPStorm/RemoteHost.png)
- `RemoteWebDebug`
- ![DebugRemoteOn](photos/PHPStorm/DebugRemoteOn.png)
- `EditRunConfigurationRemoteWebDebug`
Go to: `Menu/Run/Edit Configurations`.
- ![EditRunConfigurationRemoteWebDebug](photos/PHPStorm/Settings/EditRunConfigurationRemoteWebDebug.png)
- `EditRunConfigurationRemoteExampleTestDebug`
Go to: `Menu/Run/Edit Configurations`.
- ![EditRunConfigurationRemoteExampleTestDebug](photos/PHPStorm/Settings/EditRunConfigurationRemoteExampleTestDebug.png)
- `WindowsFirewallAllowedApps`
Go to: `Control Panel\All Control Panel Items\Windows Firewall\Allowed apps`.
- ![WindowsFirewallAllowedApps.png](photos/PHPStorm/Settings/WindowsFirewallAllowedApps.png)
- `hosts`
Edit: `C:\Windows\System32\drivers\etc\hosts`.
- ![WindowsFirewallAllowedApps.png](photos/PHPStorm/Settings/hosts.png)
- [Enable xDebug on php-fpm](#enablePhpXdebug)
<a name="Usage"></a>
## Usage
<a name="UsagePHPStormRunExampleTest"></a>
### Run ExampleTest
- right-click on `tests/ExampleTest.php`
- Select: `Run 'ExampleTest.php'` or `Ctrl+Shift+F10`.
- Should pass!! You just ran a remote test via SSH!
<a name="UsagePHPStormDebugExampleTest"></a>
### Debug ExampleTest
- Open to edit: `tests/ExampleTest.php`
- Add a BreakPoint on line 16: `$this->visit('/')`
- right-click on `tests/ExampleTest.php`
- Select: `Debug 'ExampleTest.php'`.
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
- ![Remote Test Debugging Success](photos/PHPStorm/RemoteTestDebuggingSuccess.png)
<a name="UsagePHPStormDebugSite"></a>
### Debug WebSite
- In case xDebug is disabled, from the `laradock` folder run:
`./xdebugPhpFpm start`.
- To switch xdebug off, run:
`./xdebugPhpFpm stop`
- Start Remote Debugging
- ![DebugRemoteOn](photos/PHPStorm/DebugRemoteOn.png)
- Open to edit: `bootstrap/app.php`
- Add a BreakPoint on line 14: `$app = new Illuminate\Foundation\Application(`
- Reload [Laravel Site](http://laravel/)
- Should have stopped at the BreakPoint!! You are now debugging locally against a remote Laravel project via SSH!
- ![Remote Debugging Success](photos/PHPStorm/RemoteDebuggingSuccess.png)
<a name="SSHintoWorkspace"></a>
#### Let's shell into workspace
Assuming that you are in laradock folder, type:
`ssh -i workspace/insecure_id_rsa -p2222 root@laravel`
**Cha Ching!!!!**
- `workspace/insecure_id_rsa.ppk` may become corrupted. In which case:
- fire up `puttygen`
- import `workspace/insecure_id_rsa`
- save private key to `workspace/insecure_id_rsa.ppk`
<a name="InstallKiTTY"></a>
##### KiTTY
[Kitty](http://www.9bis.net/kitty/) KiTTY is a fork from version 0.67 of PuTTY.
- Here are some settings that are working for me:
- ![Session](photos/KiTTY/Session.png)
- ![Terminal](photos/KiTTY/Terminal.png)
- ![Window](photos/KiTTY/Window.png)
- ![WindowAppearance](photos/KiTTY/WindowAppearance.png)
- ![Connection](photos/KiTTY/Connection.png)
- ![ConnectionData](photos/KiTTY/ConnectionData.png)
- ![ConnectionSSH](photos/KiTTY/ConnectionSSH.png)
- ![ConnectionSSHAuth](photos/KiTTY/ConnectionSSHAuth.png)
- ![TerminalShell](photos/KiTTY/TerminalShell.png)

7
aerospike/Dockerfile Normal file
View File

@ -0,0 +1,7 @@
FROM aerospike:latest
MAINTAINER Luciano Jr <luciano@lucianojr.com.br>
RUN rm /etc/aerospike/aerospike.conf
ADD aerospike.conf /etc/aerospike/aerospike.conf

77
aerospike/aerospike.conf Normal file
View File

@ -0,0 +1,77 @@
# Aerospike database configuration file.
# This stanza must come first.
service {
user root
group root
paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
pidfile /var/run/aerospike/asd.pid
service-threads 4
transaction-queues 4
transaction-threads-per-queue 4
proto-fd-max 15000
}
logging {
# Log file must be an absolute path.
file /var/log/aerospike/aerospike.log {
context any info
}
# Send log messages to stdout
console {
context any critical
}
}
network {
service {
address any
port 3000
# Uncomment the following to set the `access-address` parameter to the
# IP address of the Docker host. This will the allow the server to correctly
# publish the address which applications and other nodes in the cluster to
# use when addressing this node.
# access-address <IPADDR>
}
heartbeat {
# mesh is used for environments that do not support multicast
mode mesh
port 3002
# use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
# other mesh nodes
mesh-port 3002
interval 150
timeout 10
}
fabric {
port 3001
}
info {
port 3003
}
}
namespace test {
replication-factor 2
memory-size 1G
default-ttl 5d # 5 days, use 0 to never expire/evict.
# storage-engine memory
# To use file storage backing, comment out the line above and use the
# following lines instead.
storage-engine device {
file /opt/aerospike/data/test.dat
filesize 4G
data-in-memory true # Store data in memory in addition to file.
}
}

19
apache2/Dockerfile Normal file
View File

@ -0,0 +1,19 @@
FROM webdevops/apache:ubuntu-16.04
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
ARG PHP_SOCKET=php-fpm:9000
ENV WEB_PHP_SOCKET=$PHP_SOCKET
ENV WEB_DOCUMENT_ROOT=/var/www/
EXPOSE 80 443
WORKDIR /var/www/
ADD vhost.conf /etc/apache2/sites-enabled/vhost.conf
ENTRYPOINT ["/opt/docker/bin/entrypoint.sh"]
CMD ["supervisord"]

3
apache2/sites/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
*.conf
!default.conf
!default.apache.conf

View File

@ -0,0 +1,16 @@
<VirtualHost *:80>
ServerName laradock.dev
DocumentRoot /var/www/html/
Options Indexes FollowSymLinks
<Directory "/var/www/html/">
AllowOverride All
<IfVersion < 2.4>
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
</VirtualHost>

View File

@ -0,0 +1,16 @@
<VirtualHost *:80>
ServerName sample.dev
DocumentRoot /var/www/sample/public/
Options Indexes FollowSymLinks
<Directory "/var/www/sample/public/">
AllowOverride All
<IfVersion < 2.4>
Allow from all
</IfVersion>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
</Directory>
</VirtualHost>

1
apache2/vhost.conf Normal file
View File

@ -0,0 +1 @@
Include /etc/apache2/sites-available/*.conf

View File

@ -1,7 +0,0 @@
FROM debian:jessie
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
WORKDIR /var/www/laravel
CMD ["true"]

View File

@ -7,8 +7,10 @@ RUN apt-get update && apt-get install -y curl
RUN curl -sL https://github.com/ptrofimov/beanstalk_console/archive/master.tar.gz | tar xvz -C /tmp
RUN mv /tmp/beanstalk_console-master /source
RUN apt-get remove --purge -y curl && apt-get autoclean && apt-get clean
RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN apt-get remove --purge -y curl && \
apt-get autoclean && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
EXPOSE 2080

28
caddy/Caddyfile Normal file
View File

@ -0,0 +1,28 @@
# Docs: https://caddyserver.com/docs/caddyfile
0.0.0.0:80
root /var/www/public
fastcgi / php-fpm:9000 php {
index index.php
}
# To handle .html extensions with laravel change ext to
# ext / .html
rewrite {
r .*
ext /
to /index.php?{query}
}
gzip
browse
log /var/log/caddy/access.log
errors /var/log/caddy/error.log
# Uncomment to enable TLS (HTTPS)
# Change the first list to listen on port 443 when enabling TLS
#tls self_signed
# To use Lets encrpt tls with a DNS provider uncomment these
# lines and change the provider as required
#tls {
# dns cloudflare
#}

24
caddy/Dockerfile Normal file
View File

@ -0,0 +1,24 @@
FROM alpine:3.4
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
ENV caddy_version=0.9.5
LABEL caddy_version="$caddy_version" architecture="amd64"
RUN apk update \
&& apk upgrade \
&& apk add tar curl
RUN curl --silent --show-error --fail --location \
--header "Accept: application/tar+gzip, application/x-gzip, application/octet-stream" -o - \
"https://caddyserver.com/download/build?os=linux&arch=amd64&features=cloudflare%2Cdigitalocean%2Cdnsimple%2Cdyn%2Cgooglecloud%2Clinode%2Croute53" \
| tar --no-same-owner -C /usr/bin/ -xz caddy \
&& mv /usr/bin/caddy /usr/bin/caddy \
&& chmod 0755 /usr/bin/caddy
EXPOSE 80 443 2015
WORKDIR /var/www/public
CMD ["/usr/bin/caddy", "-conf", "/etc/Caddyfile"]

8
certbot/Dockerfile Normal file
View File

@ -0,0 +1,8 @@
FROM phusion/baseimage:latest
COPY run-certbot.sh /root/certbot/run-certbot.sh
RUN apt-get update
RUN apt-get install -y letsencrypt
ENTRYPOINT bash -c "bash /root/certbot/run-certbot.sh && sleep infinity"

View File

View File

6
certbot/run-certbot.sh Normal file
View File

@ -0,0 +1,6 @@
#!/bin/bash
letsencrypt certonly --webroot -w /var/www/letsencrypt -d "$CN" --agree-tos --email "$EMAIL" --non-interactive --text
cp /etc/letsencrypt/archive/"$CN"/cert1.pem /var/certs/cert1.pem
cp /etc/letsencrypt/archive/"$CN"/privkey1.pem /var/certs/privkey1.pem

View File

@ -1,5 +0,0 @@
FROM debian:jessie
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
CMD ["true"]

View File

@ -2,93 +2,201 @@ version: '2'
services:
### Applications Code Container #############################
applications:
image: tianon/true
volumes:
- ${APPLICATION}:/var/www
### Workspace Utilities Container ###########################
workspace:
build:
context: ./workspace
args:
- INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG}
- INSTALL_SOAP=${WORKSPACE_INSTALL_SOAP}
- INSTALL_MONGO=${WORKSPACE_INSTALL_MONGO}
- INSTALL_NODE=${WORKSPACE_INSTALL_NODE}
- INSTALL_YARN=${WORKSPACE_INSTALL_YARN}
- INSTALL_DRUSH=${WORKSPACE_INSTALL_DRUSH}
- INSTALL_AEROSPIKE_EXTENSION=${WORKSPACE_INSTALL_AEROSPIKE_EXTENSION}
- INSTALL_V8JS_EXTENSION=${WORKSPACE_INSTALL_INSTALL_V8JS_EXTENSION}
- COMPOSER_GLOBAL_INSTALL=${WORKSPACE_COMPOSER_GLOBAL_INSTALL}
- INSTALL_WORKSPACE_SSH=${WORKSPACE_INSTALL_WORKSPACE_SSH}
- INSTALL_LARAVEL_ENVOY=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_DEPLOYER=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_LINUXBREW=${WORKSPACE_INSTALL_LARAVEL_ENVOY}
- INSTALL_MC=${WORKSPACE_INSTALL_MC}
- PUID=${WORKSPACE_PUID}
- PGID=${WORKSPACE_PGID}
- NODE_VERSION=${WORKSPACE_NODE_VERSION}
- YARN_VERSION=${WORKSPACE_YARN_VERSION}
- TZ=${WORKSPACE_TIMEZONE}
volumes_from:
- applications
extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}"
ports:
- "${WORKSPACE_SSH_PORT}:22"
tty: true
### PHP-FPM Container #######################################
php-fpm:
build:
context: ./php-fpm
dockerfile: Dockerfile-70
args:
- INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG}
- INSTALL_SOAP=${PHP_FPM_INSTALL_SOAP}
- INSTALL_MONGO=${PHP_FPM_INSTALL_MONGO}
- INSTALL_ZIP_ARCHIVE=${PHP_FPM_INSTALL_ZIP_ARCHIVE}
- INSTALL_BCMATH=${PHP_FPM_INSTALL_BCMATH}
- INSTALL_PHPREDIS=${PHP_FPM_INSTALL_PHPREDIS}
- INSTALL_MEMCACHED=${PHP_FPM_INSTALL_MEMCACHED}
- INSTALL_OPCACHE=${PHP_FPM_INSTALL_OPCACHE}
- INSTALL_EXIF=${PHP_FPM_INSTALL_EXIF}
- INSTALL_AEROSPIKE_EXTENSION=${PHP_FPM_INSTALL_AEROSPIKE_EXTENSION}
- INSTALL_MYSQLI=${PHP_FPM_INSTALL_MYSQLI}
- INSTALL_TOKENIZER=${PHP_FPM_INSTALL_TOKENIZER}
- INSTALL_INTL=${PHP_FPM_INSTALL_INTL}
dockerfile: ${PHP_FPM_DOCKER_FILE}
volumes_from:
- application
- applications
expose:
- "9000"
links:
depends_on:
- workspace
extra_hosts:
- "dockerhost:${DOCKER_HOST_IP}"
environment:
- PHP_IDE_CONFIG=${PHP_IDE_CONFIG}
### Laravel Application Code Container ######################
application:
build: ./application
volumes:
- ../:/var/www/laravel
### Databases Data Container ################################
data:
build: ./data
volumes:
- /var/lib/mysql:/var/lib/mysql
- /var/lib/postgres:/var/lib/postgres
- /var/lib/mariadb:/var/lib/mariadb
- /var/lib/memcached:/var/lib/memcached
- /var/lib/redis:/data
- /var/lib/neo4j:/var/lib/neo4j/data
- /var/lib/mongo:/data/db
### PHP Worker Container #####################################
php-worker:
build:
context: ./php-worker
volumes_from:
- applications
depends_on:
- workspace
### Nginx Server Container ##################################
nginx:
build: ./nginx
build:
context: ./nginx
args:
- PHP_UPSTREAM=php-fpm
volumes_from:
- application
- applications
volumes:
- ./logs/nginx/:/var/log/nginx
- ${NGINX_HOST_LOG_PATH}:/var/log/nginx
- ${NGINX_SITES_PATH}:/etc/nginx/sites-available
ports:
- "80:80"
- "443:443"
links:
- "${NGINX_HOST_HTTP_PORT}:80"
- "${NGINX_HOST_HTTPS_PORT}:443"
depends_on:
- php-fpm
### Apache Server Container #################################
apache2:
build:
context: ./apache2
args:
- PHP_SOCKET=${PHP_SOCKET}
volumes_from:
- applications
volumes:
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
- ./apache2/sites:/etc/apache2/sites-available
ports:
- "${APACHE_HOST_HTTP_PORT}:80"
- "${APACHE_HOST_HTTPS_PORT}:443"
depends_on:
- php-fpm
### HHVM Container ##########################################
hhvm:
build: ./hhvm
volumes_from:
- applications
expose:
- "9000"
depends_on:
- workspace
### Minio Container #########################################
minio:
build: ./minio
volumes:
- minio:/export
ports:
- "${MINIO_PORT}:9000"
environment:
MINIO_ACCESS_KEY: access
MINIO_SECRET_KEY: secretkey
### MySQL Container #########################################
mysql:
build: ./mysql
volumes_from:
- data
build:
context: ./mysql
args:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- mysql:/var/lib/mysql
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: homestead
MYSQL_USER: homestead
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
### PostgreSQL Container ####################################
postgres:
build: ./postgres
volumes_from:
- data
ports:
- "5432:5432"
environment:
POSTGRES_DB: homestead
POSTGRES_USER: homestead
POSTGRES_PASSWORD: secret
- "${MYSQL_PORT}:3306"
### MariaDB Container #######################################
mariadb:
build: ./mariadb
volumes_from:
- data
volumes:
- mariadb:/var/lib/mysql
ports:
- "3306:3306"
- "${MARIADB_PORT}:3306"
environment:
MYSQL_DATABASE: homestead
MYSQL_USER: homestead
MYSQL_PASSWORD: secret
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ${MARIADB_DATABASE}
MYSQL_USER: ${MARIADB_USER}
MYSQL_PASSWORD: ${MARIADB_PASSWORD}
MYSQL_ROOT_PASSWORD: ${MARIADB_PORT}
### PostgreSQL Container ####################################
postgres:
build: ./postgres
volumes:
- postgres:/var/lib/postgresql/data
ports:
- "${POSTGRES_PORT}:5432"
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
### PostgreSQL PostGis Container ############################
postgres-postgis:
build: ./postgres-postgis
volumes:
- postgres:/var/lib/postgresql/data
ports:
- "${POSTGRES_PORT}:5432"
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
### Neo4j Container #########################################
@ -98,9 +206,9 @@ services:
- "7474:7474"
- "1337:1337"
environment:
- NEO4J_AUTH=homestead:secret
volumes_from:
- data
- NEO4J_AUTH=default:secret
volumes:
- neo4j:/var/lib/neo4j/data
### MongoDB Container #######################################
@ -108,27 +216,51 @@ services:
build: ./mongo
ports:
- "27017:27017"
volumes_from:
- data
volumes:
- mongo:/data/db
### RethinkDB Container #######################################
rethinkdb:
build: ./rethinkdb
ports:
- "8090:8080"
volumes:
- rethinkdb:/data/rethinkdb_data
### Redis Container #########################################
redis:
build: ./redis
volumes_from:
- data
volumes:
- redis:/data
ports:
- "6379:6379"
### Aerospike c Container ###################################
aerospike:
build: ./aerospike
volumes_from:
- workspace
volumes:
- aerospike:/opt/aerospike/data
ports:
- "3000:3000"
- "3001:3001"
- "3002:3002"
- "3003:3003"
### Memcached Container #####################################
memcached:
build: ./memcached
volumes_from:
- data
volumes:
- memcached:/var/lib/memcached
ports:
- "11211:11211"
links:
- "${MEMCACHED_HOST_PORT}:11211"
depends_on:
- php-fpm
### Beanstalkd Container ####################################
@ -136,9 +268,24 @@ services:
beanstalkd:
build: ./beanstalkd
ports:
- "11300:11300"
- "${BEANSTALKD_HOST_PORT}:11300"
privileged: true
links:
depends_on:
- php-fpm
### RabbitMQ Container ######################################
rabbitmq:
build: ./rabbitmq
ports:
- "${RABBITMQ_NODE_HOST_PORT}:5672"
- "${RABBITMQ_MANAGEMENT_HTTP_HOST_PORT}:15672"
- "${RABBITMQ_MANAGEMENT_HTTPS_HOST_PORT}:15671"
privileged: true
environment:
RABBITMQ_DEFAULT_USER: ${RABBITMQ_DEFAULT_USER}
RABBITMQ_DEFAULT_PASS: ${RABBITMQ_DEFAULT_PASS}
depends_on:
- php-fpm
### Beanstalkd Console Container ############################
@ -147,15 +294,119 @@ services:
build: ./beanstalkd-console
ports:
- "2080:2080"
links:
depends_on:
- beanstalkd
### Workspace Utilities Container ###########################
### Caddy Server Container ##################################
workspace:
build: ./workspace
caddy:
build: ./caddy
ports:
- "80:80"
- "443:443"
- "2015:2015"
volumes_from:
- application
tty: true
- applications
volumes:
- ./caddy/Caddyfile:/etc/Caddyfile
- ./logs/caddy:/var/log/caddy
- caddy:/root/.caddy
depends_on:
- php-fpm
### Add more Containers below ###############################
### phpMyAdmin Container ####################################
phpmyadmin:
build: ./phpmyadmin
environment:
PMA_ARBITRARY: 1
MYSQL_USER: ${PMA_USER}
MYSQL_PASSWORD: ${PMA_PASSWORD}
MYSQL_ROOT_PASSWORD: ${PMA_ROOT_PASSWORD}
ports:
- "${PMA_PORT}:80"
depends_on:
- "${PMA_DB_ENGINE}"
### pgAdmin Container #######################################
pgadmin:
build: ./pgadmin
ports:
- "5050:5050"
depends_on:
- postgres
### ElasticSearch Container #################################
elasticsearch:
build: ./elasticsearch
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
- elasticsearch-plugins:/usr/share/elasticsearch/plugins
ports:
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
depends_on:
- php-fpm
### Certbot Container ##################################
certbot:
build:
context: ./certbot
volumes:
- ./data/certbot/certs/:/var/certs
- ./certbot/letsencrypt/:/var/www/letsencrypt
environment:
CN: "fake.domain.com"
EMAIL: "fake.email@gmail.com"
### Mailhog Container #########################################
mailhog:
build: ./mailhog
ports:
- "1025:1025"
- "8025:8025"
### Selenium Container #########################################
selenium:
build: ./selenium
ports:
- "${SELENIUM_PORT}:4444"
volumes:
- /dev/shm:/dev/shm
### Volumes Setup ###########################################
volumes:
mysql:
driver: "local"
postgres:
driver: "local"
memcached:
driver: "local"
redis:
driver: "local"
neo4j:
driver: "local"
mariadb:
driver: "local"
mongo:
driver: "local"
minio:
driver: "local"
rethinkdb:
driver: "local"
phpmyadmin:
driver: "local"
aerospike:
driver: "local"
caddy:
driver: "local"
elasticsearch-data:
driver: "local"
elasticsearch-plugins:
driver: "local"

0
docs/.gitkeep Normal file
View File

1
docs/CNAME Normal file
View File

@ -0,0 +1 @@
laradock.io

View File

@ -0,0 +1,642 @@
<!DOCTYPE html>
<html class="no-js">
<head lang="en-us">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=10" />
<title>Contributing - Laradock</title>
<meta name="generator" content="Hugo 0.18.1" />
<meta name="description" content="Laradock documentations.">
<link rel="canonical" href="http://laradock.io/contributing/">
<meta name="author" content="Mahmoud Zalt">
<meta property="og:url" content="http://laradock.io/contributing/">
<meta property="og:title" content="Laradock">
<meta name="apple-mobile-web-app-title" content="Laradock">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<link rel="shortcut icon" type="image/x-icon" href="http://laradock.io/images/favicon.ico">
<link rel="icon" type="image/x-icon" href="http://laradock.io/images/favicon.ico">
<style>
@font-face {
font-family: 'Icon';
src: url('http://laradock.io/fonts/icon.eot');
src: url('http://laradock.io/fonts/icon.eot')
format('embedded-opentype'),
url('http://laradock.io/fonts/icon.woff')
format('woff'),
url('http://laradock.io/fonts/icon.ttf')
format('truetype'),
url('http://laradock.io/fonts/icon.svg')
format('svg');
font-weight: normal;
font-style: normal;
}
</style>
<link rel="stylesheet" href="http://laradock.io/stylesheets/application.css">
<link rel="stylesheet" href="http://laradock.io/stylesheets/temporary.css">
<link rel="stylesheet" href="http://laradock.io/stylesheets/palettes.css">
<link rel="stylesheet" href="http://laradock.io/stylesheets/highlight/highlight.css">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Doctarine:400,700|Source&#43;Code&#43;Pro">
<style>
body, input {
font-family: 'Doctarine', Helvetica, Arial, sans-serif;
}
pre, code {
font-family: 'Source Code Pro', 'Courier New', 'Courier', monospace;
}
</style>
<script src="http://laradock.io/javascripts/modernizr.js"></script>
</head>
<body class="palette-primary-deep-purple palette-accent-purple">
<div class="backdrop">
<div class="backdrop-paper"></div>
</div>
<input class="toggle" type="checkbox" id="toggle-drawer">
<input class="toggle" type="checkbox" id="toggle-search">
<label class="toggle-button overlay" for="toggle-drawer"></label>
<header class="header">
<nav aria-label="Header">
<div class="bar default">
<div class="button button-menu" role="button" aria-label="Menu">
<label class="toggle-button icon icon-menu" for="toggle-drawer">
<span></span>
</label>
</div>
<div class="stretch">
<div class="title">
<b>Laradock</b> <span style="color: rgba(249, 245, 255, 0.63);"> / Contributing</span>
</div>
</div>
<div class="button button-github" role="button" aria-label="GitHub">
<a style="padding: 0px; font-size:40px" href="https://github.com/laradock/laradock" title="@laradock/laradock on GitHub" target="_blank" class="toggle-button icon icon-github"></a>
</div>
<p style="font-size: 18px; padding: 8px">Github</p>
</div>
<div class="bar search">
<div class="button button-close" role="button" aria-label="Close">
<label class="toggle-button icon icon-back" for="toggle-search"></label>
</div>
<div class="stretch">
<div class="field">
<input class="query" type="text" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck>
</div>
</div>
<div class="button button-reset" role="button" aria-label="Search">
<button class="toggle-button icon icon-close" id="reset-search"></button>
</div>
</div>
</nav>
</header>
<main class="main">
<div class="drawer">
<nav aria-label="Navigation">
<div class="scrollable">
<div class="wrapper">
<div class="toc">
<ul>
<li>
<a title="Introduction" href="http://laradock.io/introduction/">
Introduction
</a>
</li>
<li>
<a title="Getting Started" href="http://laradock.io/getting-started/">
Getting Started
</a>
</li>
<li>
<a title="Documentation" href="http://laradock.io/documentation/">
Documentation
</a>
</li>
<li>
<a title="Related Projects" href="http://laradock.io/related-projects/">
Related Projects
</a>
</li>
<li>
<a title="Help &amp; Questions" href="http://laradock.io/help/">
Help &amp; Questions
</a>
</li>
<li>
<a class="current" title="Contributing" href="http://laradock.io/contributing/">
Contributing
</a>
<ul id="scrollspy">
</ul>
</li>
<li>
<a title="License" href="http://laradock.io/license/">
License
</a>
</li>
</ul>
<ul>
</ul>
</div>
</div>
</div>
</nav>
</div>
<article class="article">
<div class="wrapper">
<h1>Contributing </h1>
<p>Your contribution is more than welcome.</p>
<h2 id="i-have-a-question-problem">I have a Question/Problem</h2>
<p>If you have questions about how to use Laradock, please direct your questions to the discussion on <a href="https://gitter.im/Laradock/laradock">Gitter</a>. If you believe your question could help others, then consider opening an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as <code>Question</code>) And you can still seek help on Gitter for it.</p>
<h2 id="i-found-an-issue">I found an Issue</h2>
<p>If have an issue or you found a typo in the documentation, you can help us by
opnening an <a href="https://github.com/laradock/laradock/issues">Issue</a>.</p>
<p><strong>Steps to do before opening an Issue:</strong></p>
<ol>
<li><p>Before you submit your issue search the archive, maybe your question was already answered couple hours ago (search in the closed Issues as well).</p></li>
<li><p>Decide if the Issue belongs to this project or to <a href="https://github.com/docker">Docker</a> itself! or even the tool you are using such as Nginx or MongoDB&hellip;</p></li>
</ol>
<p>If your issue appears to be a bug, and hasn&rsquo;t been reported, then open a new issue.</p>
<p><em>This Help us to maximize the effort we can spend fixing issues and adding new
features, by not reporting duplicate issues.</em></p>
<h2 id="i-want-a-feature">I want a Feature</h2>
<p>You can request a new feature by submitting an <a href="https://github.com/laradock/laradock/issues">Issue</a> (it will be labeled as <code>Feature Suggestion</code>). If you would like to implement a new feature then consider submitting a Pull Request yourself.</p>
<h2 id="i-want-to-update-the-documentation-site">I want to update the Documentation (Site)</h2>
<p>Laradock uses <a href="https://gohugo.io/">Hugo</a> as website generator tool, with the <a href="http://themes.gohugo.io/theme/material-docs/">Material Docs theme</a>. You might need to check their docs quickly.</p>
<ol>
<li>Install <a href="https://gohugo.io/">Hugo</a> on your machine (easy thing).</li>
<li>Open the <code>DOCUMENTATION/_settings/content</code> and search for the markdown file you want to edit (every folder represents a section in the menu).</li>
<li>Delete the <code>/docs</code> folder from the root.</li>
<li>When you finish editing, run the <code>hugo</code> command to generate the HTML docs (in the <code>/docs</code>).</li>
</ol>
<h3 id="to-host-the-website-locally">To Host the website locally</h3>
<p>Go to <code>DOCUMENTATION/_settings</code> in your terminal and run <code>hugo serve</code> to host the website locally.</p>
<h3 id="edit-the-sidebar">Edit the sidebar</h3>
<p>To add a new section to the sidebar or edit existing one, you need to edit this file <code>DOCUMENTATION/_settings/config.toml</code>.</p>
<h2 id="how-to-support-new-software-add-new-container">How to support new Software (Add new Container)</h2>
<ul>
<li><p>Create folder with the software name.</p></li>
<li><p>Add a <code>Dockerfile</code>, write your code there.</p></li>
<li><p>You may add additional files in the software folder.</p></li>
<li><p>Add the software to the <code>docker-compose.yml</code> file.</p></li>
<li><p>Make sure you follow our commenting style.</p></li>
<li><p>Add the software in the <code>Documentation</code>.</p></li>
</ul>
<h2 id="edit-existing-software-edit-a-container">Edit existing Software (Edit a Container)</h2>
<ul>
<li><p>Open the software (container) folder.</p></li>
<li><p>Edit the files you want to update.</p></li>
<li><p><strong>Note:</strong> If you want to edit the base image of the <code>Workspace</code> or the <code>php-fpm</code> Containers,
you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.</p></li>
<li><p>Make sure to update the <code>Documentation</code> in case you made any changes.</p></li>
</ul>
<h2 id="pull-request">Pull Request</h2>
<h3 id="1-before-submitting-a-pull-request-pr">1. Before Submitting a Pull Request (PR)</h3>
<p>Always Test everything and make sure its working:</p>
<ul>
<li>Pull the latest updates (or fork of you dont have permission)</li>
<li>Before editing anything:
<ul>
<li>Test building the container (docker-compose build &ndash;no-cache container-name) build with no cache first.</li>
<li>Test running the container with some other containers in real app and see of everything is working fine.</li>
</ul></li>
<li>Now edit the container (edit section by section and test rebuilding the container after every edited section)
<ul>
<li>Testing building the container (docker-compose build container-name) with no errors.</li>
<li>Test it in a real App if possible.</li>
</ul></li>
</ul>
<h3 id="2-submitting-a-pr">2. Submitting a PR</h3>
<p>Consider the following guidelines:</p>
<ul>
<li><p>Search <a href="https://github.com/laradock/laradock/pulls">GitHub</a> for an open or closed Pull Request that relates to your submission. You don&rsquo;t want to duplicate efforts.</p></li>
<li><p>Make your changes in a new git branch:</p>
<pre><code class="language-shell"> git checkout -b my-fix-branch master
</code></pre></li>
<li><p>Commit your changes using a descriptive commit message.</p></li>
<li><p>Push your branch to GitHub:</p>
<pre><code class="language-shell">git push origin my-fix-branch
</code></pre></li>
<li><p>In GitHub, send a pull request to <code>laradock:master</code>.</p></li>
<li><p>If we suggest changes then:</p>
<ul>
<li>Make the required updates.</li>
<li>Commit your changes to your branch (e.g. <code>my-fix-branch</code>).</li>
<li>Push the changes to your GitHub repository (this will update your Pull Request).</li>
</ul></li>
</ul>
<blockquote>
<p>If the PR gets too outdated we may ask you to rebase and force push to update the PR:</p>
</blockquote>
<pre><code class="language-shell">git rebase master -i
git push origin my-fix-branch -f
</code></pre>
<p><em>WARNING. Squashing or reverting commits and forced push thereafter may remove GitHub comments on code that were previously made by you and others in your commits.</em></p>
<h3 id="3-after-your-pr-is-merged">3. After your PR is merged</h3>
<p>After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:</p>
<ul>
<li><p>Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:</p>
<pre><code class="language-shell">git push origin --delete my-fix-branch
</code></pre></li>
<li><p>Check out the master branch:</p>
<pre><code class="language-shell">git checkout master -f
</code></pre></li>
<li><p>Delete the local branch:</p>
<pre><code class="language-shell">git branch -D my-fix-branch
</code></pre></li>
<li><p>Update your master with the latest upstream version:</p>
<pre><code class="language-shell">git pull --ff upstream master
</code></pre></li>
</ul>
<p><br></p>
<h4 id="happy-coding">Happy Coding :)</h4>
<aside class="copyright" role="note">
Documentation built with
<a href="https://www.gohugo.io" target="_blank">Hugo</a>
using the
<a href="http://github.com/digitalcraftsman/hugo-material-docs" target="_blank">Material</a> theme.
</aside>
<footer class="footer">
<nav class="pagination" aria-label="Footer">
<div class="previous">
<a href="http://laradock.io/help/" title="Help &amp; Questions">
<span class="direction">
Previous
</span>
<div class="page">
<div class="button button-previous" role="button" aria-label="Previous">
<i class="icon icon-back"></i>
</div>
<div class="stretch">
<div class="title">
Help &amp; Questions
</div>
</div>
</div>
</a>
</div>
<div class="next">
<a href="http://laradock.io/license/" title="License">
<span class="direction">
Next
</span>
<div class="page">
<div class="stretch">
<div class="title">
License
</div>
</div>
<div class="button button-next" role="button" aria-label="Next">
<i class="icon icon-forward"></i>
</div>
</div>
</a>
</div>
</nav>
</footer>
</div>
</article>
<div class="results" role="status" aria-live="polite">
<div class="scrollable">
<div class="wrapper">
<div class="meta"></div>
<div class="list"></div>
</div>
</div>
</div>
</main>
<script>
var base_url = '';
var repo_id = '';
</script>
<script src="http://laradock.io/javascripts/application.js"></script>
<script>
/* Add headers to scrollspy */
var headers = document.getElementsByTagName("h2");
var scrollspy = document.getElementById('scrollspy');
if(scrollspy) {
if(headers.length > 0) {
for(var i = 0; i < headers.length; i++) {
var li = document.createElement("li");
li.setAttribute("class", "anchor");
var a = document.createElement("a");
a.setAttribute("href", "#" + headers[i].id);
a.setAttribute("title", headers[i].innerHTML);
a.innerHTML = headers[i].innerHTML;
li.appendChild(a)
scrollspy.appendChild(li);
}
} else {
scrollspy.parentElement.removeChild(scrollspy)
}
/* Add permanent link next to the headers */
var headers = document.querySelectorAll("h1, h2, h3, h4, h5, h6");
for(var i = 0; i < headers.length; i++) {
var a = document.createElement("a");
a.setAttribute("class", "headerlink");
a.setAttribute("href", "#" + headers[i].id);
a.setAttribute("title", "Permanent link")
a.innerHTML = "#";
headers[i].appendChild(a);
}
}
</script>
<script>
(function(i,s,o,g,r,a,m){
i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||
[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;
m.parentNode.insertBefore(a,m)
})(window, document,
'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-37514928-9', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
var buttons = document.querySelectorAll('a');
Array.prototype.map.call(buttons, function(item) {
if (item.host != document.location.host) {
item.addEventListener('click', function() {
var action = item.getAttribute('data-action') || 'follow';
ga('send', 'event', 'outbound', action, item.href);
});
}
});
var query = document.querySelector('.query');
query.addEventListener('blur', function() {
if (this.value) {
var path = document.location.pathname;
ga('send', 'pageview', path + '?q=' + this.value);
}
});
</script>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.8.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
</body>
</html>

190
docs/contributing/index.xml Normal file
View File

@ -0,0 +1,190 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Contributings on Laradock</title>
<link>http://laradock.io/contributing/index.xml</link>
<description>Recent content in Contributings on Laradock</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<atom:link href="http://laradock.io/contributing/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>Contributing</title>
<link>http://laradock.io/contributing/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>http://laradock.io/contributing/</guid>
<description>
&lt;p&gt;Your contribution is more than welcome.&lt;/p&gt;
&lt;h2 id=&#34;i-have-a-question-problem&#34;&gt;I have a Question/Problem&lt;/h2&gt;
&lt;p&gt;If you have questions about how to use Laradock, please direct your questions to the discussion on &lt;a href=&#34;https://gitter.im/Laradock/laradock&#34;&gt;Gitter&lt;/a&gt;. If you believe your question could help others, then consider opening an &lt;a href=&#34;https://github.com/laradock/laradock/issues&#34;&gt;Issue&lt;/a&gt; (it will be labeled as &lt;code&gt;Question&lt;/code&gt;) And you can still seek help on Gitter for it.&lt;/p&gt;
&lt;h2 id=&#34;i-found-an-issue&#34;&gt;I found an Issue&lt;/h2&gt;
&lt;p&gt;If have an issue or you found a typo in the documentation, you can help us by
opnening an &lt;a href=&#34;https://github.com/laradock/laradock/issues&#34;&gt;Issue&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Steps to do before opening an Issue:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Before you submit your issue search the archive, maybe your question was already answered couple hours ago (search in the closed Issues as well).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Decide if the Issue belongs to this project or to &lt;a href=&#34;https://github.com/docker&#34;&gt;Docker&lt;/a&gt; itself! or even the tool you are using such as Nginx or MongoDB&amp;hellip;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If your issue appears to be a bug, and hasn&amp;rsquo;t been reported, then open a new issue.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;This Help us to maximize the effort we can spend fixing issues and adding new
features, by not reporting duplicate issues.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id=&#34;i-want-a-feature&#34;&gt;I want a Feature&lt;/h2&gt;
&lt;p&gt;You can request a new feature by submitting an &lt;a href=&#34;https://github.com/laradock/laradock/issues&#34;&gt;Issue&lt;/a&gt; (it will be labeled as &lt;code&gt;Feature Suggestion&lt;/code&gt;). If you would like to implement a new feature then consider submitting a Pull Request yourself.&lt;/p&gt;
&lt;h2 id=&#34;i-want-to-update-the-documentation-site&#34;&gt;I want to update the Documentation (Site)&lt;/h2&gt;
&lt;p&gt;Laradock uses &lt;a href=&#34;https://gohugo.io/&#34;&gt;Hugo&lt;/a&gt; as website generator tool, with the &lt;a href=&#34;http://themes.gohugo.io/theme/material-docs/&#34;&gt;Material Docs theme&lt;/a&gt;. You might need to check their docs quickly.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install &lt;a href=&#34;https://gohugo.io/&#34;&gt;Hugo&lt;/a&gt; on your machine (easy thing).&lt;/li&gt;
&lt;li&gt;Open the &lt;code&gt;DOCUMENTATION/_settings/content&lt;/code&gt; and search for the markdown file you want to edit (every folder represents a section in the menu).&lt;/li&gt;
&lt;li&gt;Delete the &lt;code&gt;/docs&lt;/code&gt; folder from the root.&lt;/li&gt;
&lt;li&gt;When you finish editing, run the &lt;code&gt;hugo&lt;/code&gt; command to generate the HTML docs (in the &lt;code&gt;/docs&lt;/code&gt;).&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;to-host-the-website-locally&#34;&gt;To Host the website locally&lt;/h3&gt;
&lt;p&gt;Go to &lt;code&gt;DOCUMENTATION/_settings&lt;/code&gt; in your terminal and run &lt;code&gt;hugo serve&lt;/code&gt; to host the website locally.&lt;/p&gt;
&lt;h3 id=&#34;edit-the-sidebar&#34;&gt;Edit the sidebar&lt;/h3&gt;
&lt;p&gt;To add a new section to the sidebar or edit existing one, you need to edit this file &lt;code&gt;DOCUMENTATION/_settings/config.toml&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;how-to-support-new-software-add-new-container&#34;&gt;How to support new Software (Add new Container)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Create folder with the software name.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add a &lt;code&gt;Dockerfile&lt;/code&gt;, write your code there.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You may add additional files in the software folder.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add the software to the &lt;code&gt;docker-compose.yml&lt;/code&gt; file.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make sure you follow our commenting style.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Add the software in the &lt;code&gt;Documentation&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;edit-existing-software-edit-a-container&#34;&gt;Edit existing Software (Edit a Container)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Open the software (container) folder.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Edit the files you want to update.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; If you want to edit the base image of the &lt;code&gt;Workspace&lt;/code&gt; or the &lt;code&gt;php-fpm&lt;/code&gt; Containers,
you need to edit their Docker-files from their GitHub repositories. For more info read their Dockerfiles comment on the Laradock repository.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make sure to update the &lt;code&gt;Documentation&lt;/code&gt; in case you made any changes.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;pull-request&#34;&gt;Pull Request&lt;/h2&gt;
&lt;h3 id=&#34;1-before-submitting-a-pull-request-pr&#34;&gt;1. Before Submitting a Pull Request (PR)&lt;/h3&gt;
&lt;p&gt;Always Test everything and make sure its working:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pull the latest updates (or fork of you dont have permission)&lt;/li&gt;
&lt;li&gt;Before editing anything:
&lt;ul&gt;
&lt;li&gt;Test building the container (docker-compose build &amp;ndash;no-cache container-name) build with no cache first.&lt;/li&gt;
&lt;li&gt;Test running the container with some other containers in real app and see of everything is working fine.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Now edit the container (edit section by section and test rebuilding the container after every edited section)
&lt;ul&gt;
&lt;li&gt;Testing building the container (docker-compose build container-name) with no errors.&lt;/li&gt;
&lt;li&gt;Test it in a real App if possible.&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-submitting-a-pr&#34;&gt;2. Submitting a PR&lt;/h3&gt;
&lt;p&gt;Consider the following guidelines:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Search &lt;a href=&#34;https://github.com/laradock/laradock/pulls&#34;&gt;GitHub&lt;/a&gt; for an open or closed Pull Request that relates to your submission. You don&amp;rsquo;t want to duplicate efforts.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Make your changes in a new git branch:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt; git checkout -b my-fix-branch master
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Commit your changes using a descriptive commit message.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Push your branch to GitHub:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git push origin my-fix-branch
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In GitHub, send a pull request to &lt;code&gt;laradock:master&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If we suggest changes then:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Make the required updates.&lt;/li&gt;
&lt;li&gt;Commit your changes to your branch (e.g. &lt;code&gt;my-fix-branch&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Push the changes to your GitHub repository (this will update your Pull Request).&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;If the PR gets too outdated we may ask you to rebase and force push to update the PR:&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git rebase master -i
git push origin my-fix-branch -f
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;em&gt;WARNING. Squashing or reverting commits and forced push thereafter may remove GitHub comments on code that were previously made by you and others in your commits.&lt;/em&gt;&lt;/p&gt;
&lt;h3 id=&#34;3-after-your-pr-is-merged&#34;&gt;3. After your PR is merged&lt;/h3&gt;
&lt;p&gt;After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git push origin --delete my-fix-branch
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Check out the master branch:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git checkout master -f
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Delete the local branch:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git branch -D my-fix-branch
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update your master with the latest upstream version:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&#34;language-shell&#34;&gt;git pull --ff upstream master
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br&gt;&lt;/p&gt;
&lt;h4 id=&#34;happy-coding&#34;&gt;Happy Coding :)&lt;/h4&gt;
</description>
</item>
</channel>
</rss>

Some files were not shown because too many files have changed in this diff Show More