Compare commits

...

34 Commits

Author SHA1 Message Date
Mahmoud Zalt
bf60f7520b Merge pull request #1038 from vwchu/master
add APACHE_SITES_PATH variable
2017-07-04 07:25:40 +03:00
Mahmoud Zalt
916e9f38f3 Merge pull request #1022 from ItaloBC/patch-3
ElasticSearch instance fails at loading (missing parameters)
2017-07-04 07:25:20 +03:00
Mahmoud Zalt
ebc24ced66 Merge pull request #1000 from zuohuadong/patch-4
Fix pgadmin can't boot
2017-07-04 07:23:08 +03:00
Mahmoud Zalt
3e59a2a813 add creating multiple databases to the docs 2017-07-04 06:01:18 +03:00
Mahmoud Zalt
50834268a7 upgrade mysql base image to 8.0 2017-07-04 06:00:45 +03:00
Mahmoud Zalt
007017a2a7 fix mysql error no access 2017-07-04 06:00:31 +03:00
Mahmoud Zalt
094aa9beb1 Merge pull request #1040 from sakanaproductions/fix-1017
fixed issue #1017, added ENV variables back to Dockerfile and added …
2017-07-04 00:36:06 +03:00
sakanaproductions
19f9b25a46 fixed issue #1017, added ENV variables back to Dockerfile and added startup file back 2017-06-30 17:48:24 -07:00
Vincent Chu
bc1c957f47 add APACHE_SITES_PATH variable 2017-06-30 06:22:55 -04:00
Yu-Lung Shao (Allen)
7c9f9c1ecd Merge pull request #1035 from bestlong/fix-caddy-service-build-failed
fix caddy service build failed
2017-06-29 00:22:03 -05:00
Shao Yu Lung
63152e11fa fix caddy build failed 2017-06-29 12:47:29 +08:00
Yu-Lung Shao (Allen)
27c6de1fb1 Merge pull request #1033 from bestlong/fix-travis-ci-docker
Fix travis ci build failing
2017-06-28 21:15:07 -05:00
Shao Yu Lung
70e01125fd fixing package docker-engine is not available. 2017-06-29 09:30:37 +08:00
Shao Yu Lung
26d7fb01ed fixing package docker-engine is not available. 2017-06-29 09:25:24 +08:00
Winfried
d181a69a73 Merge pull request #1031 from macghriogair/master
[Fix] Mailhog should be exposed to backend
2017-06-28 18:33:44 +02:00
Winfried
106f8ec7af Merge pull request #1029 from xsilen/patch-1
nginx sites-available shoule only use *.conf
2017-06-28 18:33:18 +02:00
Patrick Mac Gregor
1951834150 [Fix] Mailhog should be exposed to backend
- fixes failing connection to host "mailhog" when sending mail via smtp
- mailhog needs to be available for the backend at Port 1025
- i.e. in a Laravel app .env should contain "MAIL_HOST=mailhog
2017-06-28 11:28:04 +02:00
LinBo len
4c732aa5d6 nginx sites-available shoule only use *.conf
although most much of use case developer should modify laradock to suit their project. we can use *.conf.example to take effect.
but we also need a dummy nginx conf to info other newer to know how to config their nginx conf. the *.conf.example should be.

so i think we should only take *.conf to take effect. not *
2017-06-26 11:11:10 +08:00
ItaloBC
bbbd247653 ElasticSearch instance fails at loading (wrong)
ElasticSearch (ES from now onwards) will fail to initialize since the parameters for its environment are not correct or absent. These are:

* `cluster.name`: Name of the cluster itself
* `bootstrap.memory_lock`: Needed for ES to [lock the JVM into swap instead of memory](https://www.elastic.co/guide/en/elasticsearch/reference/master/_memory_lock_check.html).
* `"ES_JAVA_OPTS=-Xms256m -Xmx256m"`: [Initial and maximum HEAP size for JVM](https://www.elastic.co/guide/en/elasticsearch/reference/current/_heap_size_check.html). Since it's locked to disk, should be the same. Half the defaults (512m) for development.
* `ulimits: memlock: soft (-1), hard (-1)`: [ES needs to have unlimited access to memory](https://www.elastic.co/guide/en/elasticsearch/reference/current/max-size-virtual-memory-check.html), otherwise it will feel sluggish.  
* `mem_limit: 512m`: Hard limit the memory available for the container.

This can, and should, be changed using `.env` file variables, but it seems that this should suffice for basic ES development.
2017-06-14 14:19:47 -04:00
Winfried
c35445b066 Merge pull request #1015 from ardziej/patch-1
Set Timezone
2017-06-13 19:24:19 +02:00
Winfried
72198ed38c Merge pull request #1008 from edmundluong/master
Set default setting to false for various Workspace installation options
2017-06-13 19:21:48 +02:00
Mahmoud Zalt
ab464d93d3 Merge pull request #1016 from ardziej/patch-2
Added TZ environment for MySQL Container
2017-06-13 05:59:59 +03:00
Michal Ardziejewski
e56587ec47 Added TZ environment for MySQL Container 2017-06-13 01:03:42 +02:00
Michal Ardziejewski
bbea2f0bab Set Timezone 2017-06-13 00:55:05 +02:00
Winfried
9db39ad36f Merge pull request #1014 from ItaloBC/patch-2
ElasticSearch - Change to official repository
2017-06-12 19:12:07 +02:00
Winfried
f009ba752b Merge pull request #1013 from ItaloBC/patch-1
Kibana - Change to official repository
2017-06-12 19:11:54 +02:00
ItaloBC
03b551f9d6 Change to official repository
Elastic.co announced they will pull out their official images from the Docker Registry and user their own. There will be no updates starting 6/20/2017.

Pulling needs explicit version. Currently 5.4.1
2017-06-12 13:06:41 -04:00
ItaloBC
30df311ec2 Change to official repository
Elastic.co announced they will pull out their official images from the Docker Registry and user their own. There will be no updates starting 6/20/2017.

Pulling needs explicit version. Currently 5.4.1
2017-06-12 13:02:08 -04:00
Edmund Luong
262b9f20a3 Set default setting to false for the following options in workspace:
- Laravel Envoy
- Laravel Installer
- LinuxBrew
- MS SQL Server
2017-06-09 11:00:42 -04:00
Edmund Luong
3eb8fce4f9 Merge pull request #2 from laradock/master
Merge master
2017-06-09 10:58:08 -04:00
Mahmoud Zalt
05f8166bef add PR template 2017-06-09 17:46:26 +03:00
Mahmoud Zalt
1bdf113767 update tools list in the docs 2017-06-09 17:33:10 +03:00
Edmund Luong
392960dc98 Merge pull request #1 from laradock/master
Merge master
2017-06-08 12:29:17 -04:00
zuohuadong
cbfd160cbf Fix 2017-06-06 18:11:31 +08:00
14 changed files with 85 additions and 36 deletions

7
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,7 @@
### Thank you for contributing to Laradock.
##### Make sure you completed the basic 3 steps below:
- [] I've read the simple [Contribution Guide](http://laradock.io/contributing).
- [] I've updated the **documentation**. (refer to [this](http://laradock.io/contributing/#update-the-documentation-site) for how to do so).
- [] I enjoyed my time contributing and making developer's life easier :)

View File

@@ -41,8 +41,11 @@ env:
# Installing a newer Docker version
before_install:
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- sudo apt-get update
- sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-engine
- sudo apt-get -y install docker-ce
- docker version
script: ./travis-build.sh

View File

@@ -192,14 +192,17 @@ 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}
docker-compose logs {container-name}
```
```bash
docker-compose logs -f {container-name}
```
More [options](https://docs.docker.com/compose/reference/logs/)
```bash
docker logs -f {container-name}
```
@@ -1057,6 +1060,19 @@ The default username and password for the root MySQL user are `root` and `root `
<br>
<a name="Create-Multiple-Databases"></a>
## Create Multiple Databases (MySQL)
Create `createdb.sql` from `mysql/docker-entrypoint-initdb.d/createdb.sql.example` in `mysql/docker-entrypoint-initdb.d/*` and add your SQL syntax as follow:
```sql
CREATE DATABASE IF NOT EXISTS `your_db_1` COLLATE 'utf8_general_ci' ;
GRANT ALL ON `your_db_1`.* TO 'mysql_user'@'%' ;
```
<br>
<a name="Change-MySQL-port"></a>

View File

@@ -83,17 +83,21 @@ In adhering to the separation of concerns principle as promoted by Docker, Larad
You can turn On/Off as many instances of as any container without worrying about the configurations, everything works like a charm.
- **Database Engines:**
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres Postgis.
MySQL - MariaDB - Percona - MongoDB - Neo4j - RethinkDB - MSSQL - PostgreSQL - Postgres-PostGIS.
- **Database Management:**
PhpMyAdmin - Adminer - PgAdmin
- **Cache Engines:**
Redis - Memcached - Aerospike
- **PHP Servers:**
NGINX - Apache2 - Caddy
- **PHP Compilers:**
PHP FPM - HHVM
- **Message Queuing:**
Beanstalkd - Beanstalkd Console - RabbitMQ - RabbitMQ Console - PHP Worker
- **Tools:**
HAProxy - Jenkins - ElasticSearch - Selenium - Certbot - Mailhog - Minio - Varnish - PhpMyAdmin - Adminer - PgAdmin - MailHog - [Blackfire](https://blackfire.io)...
- **Message Queueing:**
Beanstalkd - RabbitMQ - PHP Worker
- **Queueing Management:**
Beanstalkd Console - RabbitMQ Console
- **Random Tools:**
HAProxy - Certbot - Blackfire - Selenium - Jenkins - ElasticSearch - Kibana - Mailhog - Minio - Varnish - Swoole - Laravel Echo...
Laradock introduces the **Workspace** Image, as a development environment.
It contains a rich set of helpful tools, all pre-configured to work and integrate with almost any combination of Containers and tools you may choose.
@@ -148,7 +152,7 @@ Most importantly Docker can run on Development and on Production (same environme
What's better than a **Demo Video**:
- Laradock v5.* (soon or never)
- Laradock v5.* (should be next!)
- 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)

View File

@@ -3,6 +3,7 @@ FROM alpine:3.4
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
ENV caddy_version=0.10.3
ARG plugins=http.git
LABEL caddy_version="$caddy_version" architecture="amd64"
@@ -12,7 +13,7 @@ RUN apk update \
RUN curl --silent --show-error --fail --location \
--header "Accept: application/tar+gzip, application/x-gzip, application/octet-stream" -o - \
"https://caddyserver.com/download/linux/amd64?plugins=http.cgi,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.realip,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.dnspod,tls.dns.dyn,tls.dns.googlecloud,tls.dns.linode,tls.dns.namecheap,tls.dns.ovh,tls.dns.route53,tls.dns.vultr" \
"https://caddyserver.com/download/linux/amd64?plugins=${plugins}" \
| tar --no-same-owner -C /usr/bin/ -xz caddy \
&& mv /usr/bin/caddy /usr/bin/caddy \
&& chmod 0755 /usr/bin/caddy

View File

@@ -149,7 +149,7 @@ services:
- applications
volumes:
- ${APACHE_HOST_LOG_PATH}:/var/log/apache2
- ./apache2/sites:/etc/apache2/sites-available
- ${APACHE_SITES_PATH}:/etc/apache2/sites-available
ports:
- "${APACHE_HOST_HTTP_PORT}:80"
- "${APACHE_HOST_HTTPS_PORT}:443"
@@ -197,6 +197,7 @@ services:
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- TZ=${WORKSPACE_TIMEZONE}
volumes:
- ${DATA_SAVE_PATH}/mysql:/var/lib/mysql
- ./mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
@@ -472,6 +473,15 @@ services:
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
- elasticsearch-plugins:/usr/share/elasticsearch/plugins
environment:
- cluster.name=laradock-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms256m -Xmx256m"
ulimits:
memlock:
soft: -1
hard: -1
mem_limit: 512m
ports:
- "${ELASTICSEARCH_HOST_HTTP_PORT}:9200"
- "${ELASTICSEARCH_HOST_TRANSPORT_PORT}:9300"
@@ -517,6 +527,7 @@ services:
- "8025:8025"
networks:
- frontend
- backend
### Selenium Container ########################################

View File

@@ -1,5 +1,3 @@
FROM elasticsearch:latest
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
FROM docker.elastic.co/elasticsearch/elasticsearch:5.4.1
EXPOSE 9200 9300

View File

@@ -85,6 +85,7 @@ APACHE_HOST_HTTP_PORT=80
APACHE_HOST_HTTPS_PORT=443
APACHE2_PHP_SOCKET=php-fpm:9000
APACHE_HOST_LOG_PATH=./logs/apache2
APACHE_SITES_PATH=./apache2/sites
PHP_SOCKET=php-fpm:9000
### MYSQL ##############################################################################################################

View File

@@ -1,3 +1,3 @@
FROM kibana:latest
FROM docker.elastic.co/kibana/kibana:5.4.1
EXPOSE 5601
EXPOSE 5601

View File

@@ -1,7 +1,15 @@
FROM mysql:5.7
FROM mysql:8.0
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
#####################################
# Set Timezone
#####################################
ARG TZ=UTC
ENV TZ ${TZ}
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN chown -R mysql:root /var/lib/mysql/
ADD my.cnf /etc/mysql/conf.d/my.cnf

View File

@@ -1,20 +1,20 @@
###
### Copy createdb.sql.example to createdb.sql
### then uncomment then set database name and username to create you need databases
#
# Copy createdb.sql.example to createdb.sql
# then uncomment then set database name and username to create you need databases
#
# example: .env MYSQL_USER=appuser and need db name is myshop_db
#
# CREATE DATABASE IF NOT EXISTS `myshop_db` ;
# GRANT ALL ON `myshop_db`.* TO 'appuser'@'%' ;
#
###
### this sql script is auto run when mysql container start and $DATA_SAVE_PATH/mysql not exists.
###
### if your $DATA_SAVE_PATH/mysql is exists and you do not want to delete it, you can run by manual execution:
###
### docker-compose exec mysql bash
### mysql -u root -p < /docker-entrypoint-initdb.d/createdb.sql
###
#
# this sql script will auto run when the mysql container starts and the $DATA_SAVE_PATH/mysql not found.
#
# if your $DATA_SAVE_PATH/mysql exists and you do not want to delete it, you can run by manual execution:
#
# docker-compose exec mysql bash
# mysql -u root -p < /docker-entrypoint-initdb.d/createdb.sql
#
#CREATE DATABASE IF NOT EXISTS `dev_db_1` COLLATE 'utf8_general_ci' ;
#GRANT ALL ON `dev_db_1`.* TO 'default'@'%' ;

View File

@@ -28,7 +28,7 @@ http {
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-available/*;
include /etc/nginx/sites-available/*.conf;
open_file_cache off; # Disabled for issue 619
charset UTF-8;
}

View File

@@ -1,4 +1,4 @@
FROM fenglc/pgadmin4
FROM chorss/docker-pgadmin4
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>

View File

@@ -347,7 +347,7 @@ RUN echo "" >> ~/.bashrc && \
#####################################
USER laradock
ARG INSTALL_LARAVEL_ENVOY=true
ARG INSTALL_LARAVEL_ENVOY=false
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
@@ -360,7 +360,7 @@ RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
#####################################
USER root
ARG INSTALL_LARAVEL_INSTALLER=true
ARG INSTALL_LARAVEL_INSTALLER=false
ENV INSTALL_LARAVEL_INSTALLER ${INSTALL_LARAVEL_INSTALLER}
RUN if [ ${INSTALL_LARAVEL_INSTALLER} = true ]; then \
@@ -390,7 +390,7 @@ RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
#####################################
USER root
ARG INSTALL_LINUXBREW=true
ARG INSTALL_LINUXBREW=false
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
@@ -420,7 +420,7 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
#####################################
# SQL SERVER:
#####################################
ARG INSTALL_MSSQL=true
ARG INSTALL_MSSQL=false
ENV INSTALL_MSSQL ${INSTALL_MSSQL}
RUN if [ ${INSTALL_MSSQL} = true ]; then \