Compare commits

...

49 Commits

Author SHA1 Message Date
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
16 changed files with 771 additions and 181 deletions

1
.env Normal file
View File

@ -0,0 +1 @@
COMPOSE_CONVERT_WINDOWS_PATHS=1

1
.gitignore vendored
View File

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

View File

@ -469,7 +469,7 @@ composer create-project laravel/laravel my-cool-app "5.2.*"
系统默认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` , 如下:
新Laravel应用在 `my-cool-app` 目录中, 我们需要用 `../my-cool-app/:/var/www`替换 `../:/var/www` , 如下:
```yaml
application:

607
README.md

File diff suppressed because it is too large Load Diff

View File

@ -25,6 +25,9 @@ services:
- INSTALL_V8JS_EXTENSION=false
- COMPOSER_GLOBAL_INSTALL=false
- INSTALL_WORKSPACE_SSH=false
- INSTALL_LARAVEL_ENVOY=false
- INSTALL_DEPLOYER=false
- INSTALL_LINUXBREW=false
- PUID=1000
- PGID=1000
- NODE_VERSION=stable
@ -49,8 +52,11 @@ services:
- INSTALL_SOAP=false
- INSTALL_MONGO=false
- INSTALL_ZIP_ARCHIVE=false
- INSTALL_BCMATH=false
- INSTALL_PHPREDIS=false
- INSTALL_MEMCACHED=false
- INSTALL_OPCACHE=false
- INSTALL_EXIF=false
- INSTALL_AEROSPIKE_EXTENSION=false
- CODEIGNITER=false
dockerfile: Dockerfile-70
@ -133,7 +139,7 @@ services:
mariadb:
build: ./mariadb
volumes:
- mysql:/var/lib/mysql
- mariadb:/var/lib/mysql
ports:
- "3306:3306"
environment:
@ -189,6 +195,15 @@ services:
volumes:
- mongo:/data/db
### RethinkDB Container #######################################
rethinkdb:
build: ./rethinkdb
ports:
- "8090:8080"
volumes:
- rethinkdb:/data/rethinkdb_data
### Redis Container #########################################
redis:
@ -306,13 +321,20 @@ services:
build: ./elasticsearch
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
- elasticsearch-pkugins:/usr/share/elasticsearch/data
- elasticsearch-plugins:/usr/share/elasticsearch/data
ports:
- "9200:9200"
- "9300:9300"
links:
- php-fpm
### Selenium Container #########################################
selenium:
build: ./selenium
ports:
- "4444:4444"
### Volumes Setup ###########################################
volumes:
@ -330,6 +352,8 @@ volumes:
driver: "local"
mongo:
driver: "local"
rethinkdb:
driver: "local"
phpmyadmin:
driver: "local"
aerospike:
@ -338,7 +362,7 @@ volumes:
driver: "local"
elasticsearch-data:
driver: "local"
elasticsearch-pkugins:
elasticsearch-plugins:
driver: "local"
sessions: ## nothing is connected to this (- ./data/sessions:/sessions)
driver: "local"

View File

@ -15,6 +15,8 @@ server {
try_files $uri /index.php =404;
fastcgi_pass php-upstream;
fastcgi_index index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

View File

@ -45,7 +45,7 @@ RUN if [ ${INSTALL_SOAP} = true ]; then \
# Install the soap extension
apt-get -y update && \
apt-get -y install libxml2-dev && \
docker-php-ext-install soap && \
docker-php-ext-install soap \
;fi
#####################################
@ -84,6 +84,16 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
docker-php-ext-enable zip \
;fi
#####################################
# bcmath:
#####################################
ARG INSTALL_BCMATH=false
RUN if [ ${INSTALL_BCMATH} = true ]; then \
# Install the bcmath extension
docker-php-ext-install bcmath \
;fi
#####################################
# PHP Memcached:
#####################################

View File

@ -60,6 +60,17 @@ RUN if [ ${INSTALL_XDEBUG} = true ]; then \
docker-php-ext-enable xdebug \
;fi
#####################################
# PHP REDIS EXTENSION FOR PHP 7.0
#####################################
ARG INSTALL_PHPREDIS=false
RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
# Install Php Redis Extension
pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
;fi
# Copy xdebug configration for remote debugging
COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
@ -85,6 +96,16 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
docker-php-ext-enable zip \
;fi
#####################################
# bcmath:
#####################################
ARG INSTALL_BCMATH=false
RUN if [ ${INSTALL_BCMATH} = true ]; then \
# Install the bcmath extension
docker-php-ext-install bcmath \
;fi
#####################################
# PHP Memcached:
#####################################
@ -107,6 +128,18 @@ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
&& docker-php-ext-enable memcached \
;fi
#####################################
# Exif:
#####################################
ARG INSTALL_EXIF=false
RUN if [ ${INSTALL_EXIF} = true ]; then \
# Enable Exif PHP extentions requirements
docker-php-ext-install exif && \
docker-php-ext-enable exif \
;fi
#####################################
# PHP Aerospike:
#####################################

View File

@ -1,62 +0,0 @@
version: '2'
services:
### Workspace Utilities Container ###########################
workspace:
build:
context: ./workspace
args:
- INSTALL_XDEBUG=false
- INSTALL_MONGO=false
- INSTALL_NODE=false
- INSTALL_YARN=false
- INSTALL_DRUSH=false
- INSTALL_AEROSPIKE_EXTENSION=false
- COMPOSER_GLOBAL_INSTALL=false
- INSTALL_WORKSPACE_SSH=false
- PUID=1000
- PGID=1000
- NODE_VERSION=stable
volumes_from:
- volumes_source
ports:
- "22:22"
tty: true
### PHP-FPM Container #######################################
php-fpm:
build:
context: ./php-fpm
args:
- INSTALL_XDEBUG=false
- INSTALL_MONGO=false
- INSTALL_ZIP_ARCHIVE=false
- INSTALL_MEMCACHED=false
- INSTALL_OPCACHE=false
- INSTALL_AEROSPIKE_EXTENSION=false
dockerfile: Dockerfile-70
volumes_from:
- volumes_source
expose:
- "9000"
links:
- workspace
### Application Code Container ######################
volumes_source:
image: tianon/true
volumes:
- ../:/var/www
### Databases Data Container ################################
volumes_data:
image: tianon/true
volumes:
# - ./data/mysql:/var/lib/mysql
### Add All your Software Containers below ###############################

11
rethinkdb/Dockerfile Normal file
View File

@ -0,0 +1,11 @@
FROM rethinkdb:latest
MAINTAINER Cristian Mello <cristianc.mello@gmail.com>
VOLUME /data/rethinkdb_data
RUN cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/instance1.conf
CMD ["rethinkdb", "--bind", "all"]
EXPOSE 8080

5
selenium/Dockerfile Normal file
View File

@ -0,0 +1,5 @@
FROM selenium/standalone-chrome
MAINTAINER Edmund Luong <edmundvmluong@gmail.com>
EXPOSE 4444

View File

@ -10,7 +10,7 @@
# https://hub.docker.com/r/laradock/workspace/tags/
#
FROM laradock/workspace:1.2
FROM laradock/workspace:1.3
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
@ -74,12 +74,34 @@ RUN if [ ${COMPOSER_GLOBAL_INSTALL} = true ]; then \
composer global install \
;fi
# Export composer vendor path
RUN echo "" >> ~/.bashrc && \
echo 'export PATH="~/.composer/vendor/bin:$PATH"' >> ~/.bashrc
#####################################
# Crontab
#####################################
USER root
COPY ./crontab /var/spool/cron/crontabs
COPY ./crontab /etc/cron.d
RUN chmod -R 644 /etc/cron.d
#####################################
# User Aliases
#####################################
USER laradock
COPY ./aliases.sh /home/laradock/aliases.sh
RUN echo "" >> ~/.bashrc && \
echo "# Load Custom Aliases" >> ~/.bashrc && \
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
echo "" >> ~/.bashrc
USER root
RUN echo "" >> ~/.bashrc && \
echo "# Load Custom Aliases" >> ~/.bashrc && \
echo "source /home/laradock/aliases.sh" >> ~/.bashrc && \
echo "" >> ~/.bashrc
#####################################
# xDebug:
@ -268,6 +290,73 @@ USER laradock
RUN echo "" >> ~/.bashrc && \
echo 'export PATH="/var/www/vendor/bin:$PATH"' >> ~/.bashrc
#####################################
# Laravel Artisan Alias
#####################################
USER root
RUN echo "" >> ~/.bashrc && \
echo 'alias art="php artisan"' >> ~/.bashrc
#####################################
# Laravel Envoy:
#####################################
USER laradock
ARG INSTALL_LARAVEL_ENVOY=true
ENV INSTALL_LARAVEL_ENVOY ${INSTALL_LARAVEL_ENVOY}
RUN if [ ${INSTALL_LARAVEL_ENVOY} = true ]; then \
# Install the Laravel Envoy
composer global require "laravel/envoy=~1.0" \
;fi
#####################################
# Deployer:
#####################################
USER laradock
ARG INSTALL_DEPLOYER=false
ENV INSTALL_DEPLOYER ${INSTALL_DEPLOYER}
RUN if [ ${INSTALL_DEPLOYER} = true ]; then \
# Install the Deployer
composer global require "deployer/deployer" \
;fi
#####################################
# Linuxbrew:
#####################################
USER root
ARG INSTALL_LINUXBREW=true
ENV INSTALL_LINUXBREW ${INSTALL_LINUXBREW}
RUN if [ ${INSTALL_LINUXBREW} = true ]; then \
# Preparation
apt-get update && \
apt-get upgrade -y && \
apt-get install -y build-essential make cmake scons curl git \
ruby autoconf automake autoconf-archive \
gettext libtool flex bison \
libbz2-dev libcurl4-openssl-dev \
libexpat-dev libncurses-dev && \
# Install the Linuxbrew
git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew && \
echo "" >> ~/.bashrc && \
echo 'export PKG_CONFIG_PATH"=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
# Setup linuxbrew
echo 'export LINUXBREWHOME="$HOME/.linuxbrew"' >> ~/.bashrc && \
echo 'export PATH="$LINUXBREWHOME/bin:$PATH"' >> ~/.bashrc && \
echo 'export MANPATH="$LINUXBREWHOME/man:$MANPATH"' >> ~/.bashrc && \
echo 'export PKG_CONFIG_PATH="$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.bashrc && \
echo 'export LD_LIBRARY_PATH="$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH"' >> ~/.bashrc \
;fi
#
#--------------------------------------------------------------------------
# Final Touch

71
workspace/aliases.sh Normal file
View File

@ -0,0 +1,71 @@
#! /bin/bash
# Colors used for status updates
ESC_SEQ="\x1b["
COL_RESET=$ESC_SEQ"39;49;00m"
COL_RED=$ESC_SEQ"31;01m"
COL_GREEN=$ESC_SEQ"32;01m"
COL_YELLOW=$ESC_SEQ"33;01m"
COL_BLUE=$ESC_SEQ"34;01m"
COL_MAGENTA=$ESC_SEQ"35;01m"
COL_CYAN=$ESC_SEQ"36;01m"
# Commonly Used Aliases
alias ..="cd .."
alias c="clear"
alias cla="clear && ls -l"
alias cll="clear && ls -la"
alias cls="clear && ls"
alias code="cd /var/www"
alias ea="vi ~/aliases"
alias g="gulp"
alias home="cd ~"
alias npm-global="npm list -g --depth 0"
alias ra="reload"
alias reload="source ~/.aliases && echo \"$COL_GREEN ==> Aliases Reloaded... $COL_RESET \n \""
alias run="npm run"
alias tree="xtree"
# Laravel / PHP Alisases
alias art="php artisan"
alias artisan="php artisan"
alias cdump="composer dump-autoload -o"
alias composer:dump="composer dump-autoload -o"
alias db:reset="php artisan migrate:reset && php artisan migrate --seed"
alias migrate="php artisan migrate"
alias seed="php artisan:seed"
alias phpunit="./vendor/bin/phpunit"
# requires installation of 'https://www.npmjs.com/package/npms-cli'
alias npms="npms search"
# requires installation of 'https://www.npmjs.com/package/package-menu-cli'
alias pm="package-menu"
# requires installation of 'https://www.npmjs.com/package/pkg-version-cli'
alias pv="package-version"
# requires installation of 'https://github.com/sindresorhus/latest-version-cli'
alias lv="latest-version"
# git aliases
alias gaa="git add ."
alias gd="git --no-pager diff"
alias git-revert="git reset --hard && git clean -df"
alias gs="git status"
alias whoops="git reset --hard && git clean -df"
# Create a new directory and enter it
function mkd() {
mkdir -p "$@" && cd "$@"
}
function md() {
mkdir -p "$@" && cd "$@"
}
function xtree {
find ${1:-.} -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'
}

View File

@ -0,0 +1 @@
* * * * * laradock php /var/www/artisan schedule:run >> /dev/null 2>&1

View File

@ -1 +0,0 @@
* * * * * php /var/www/artisan schedule:run >> /dev/null 2>&1

View File

@ -4,7 +4,7 @@
# Grab full name of php-fpm container
PHP_FPM_CONTAINER=$(docker-compose ps | grep php-fpm | cut -d" " -f 1)
PHP_FPM_CONTAINER=$(docker-compose ps | grep php-fpm | cut -d " " -f 1)
# Grab OS type