Compare commits

..

55 Commits

Author SHA1 Message Date
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
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
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
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
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
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
5210ca7ccf Merge pull request #4 from LaraDock/master
Just update
2016-08-15 07:34:40 +01:00
5ebb061b70 Merge pull request #3 from LaraDock/master
Merge
2016-06-24 15:19:12 +01: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
18 changed files with 351 additions and 38 deletions

View File

@ -959,6 +959,7 @@ Docker或Laravel的特别帮助你可以在[Codementor.io](https://www.codeme
**主要 贡献者:**
- [Zhqagp](https://github.com/zhqagp)
- [Suteepat (tianissimo)](https://github.com/tianissimo)
- [David (davidavz)](https://github.com/davidavz)
- [Lialosiu](https://github.com/lialosiu)

View File

@ -49,6 +49,7 @@ It's like Laravel Homestead but for Docker instead of Vagrant.
- [Use Redis](#Use-Redis)
- [Use Mongo](#Use-Mongo)
- [Use phpMyAdmin](#Use-phpMyAdmin)
- [Use pgAdmin](#Use-pgAdmin)
- [PHP](#PHP)
- [Install PHP Extensions](#Install-PHP-Extensions)
- [Change the PHP-FPM Version](#Change-the-PHP-FPM-Version)
@ -120,6 +121,7 @@ Let's see how easy it is to install `NGINX`, `PHP`, `Composer`, `MySQL` and `Red
- **Cache Engines:**
- Redis
- Memcached
- Aerospike
- **PHP Servers:**
- NGINX
- Apache2
@ -129,9 +131,11 @@ Let's see how easy it is to install `NGINX`, `PHP`, `Composer`, `MySQL` and `Red
- HHVM
- **Message Queueing Systems:**
- Beanstalkd (+ Beanstalkd Console)
- RabbitMQ (+ RabbitMQ Console)
- **Tools:**
- Workspace (PHP7-CLI, Composer, Git, Node, Gulp, SQLite, Vim, Nano, cURL...)
- phpMyAdmin
- pgAdmin
>If you can't find your Software, build it yourself and add it to this list. Contributions are welcomed :)
@ -249,7 +253,7 @@ docker-compose up -d nginx mysql
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`, `workspace`, `phpmyadmin`.
`nginx`, `hhvm`, `php-fpm`, `mysql`, `redis`, `postgres`, `mariadb`, `neo4j`, `mongo`, `apache2`, `caddy`, `memcached`, `beanstalkd`, `beanstalkd-console`, `rabbitmq`, `workspace`, `phpmyadmin`, `aerospike`, `pgadmin`.
**Note**: `workspace` and `php-fpm` will run automatically in most of the cases, so no need to specify them in the `up` command.
@ -724,7 +728,17 @@ docker-compose up -d mariadb phpmyadmin
2 - Open your browser and visit the localhost on port **8080**: `http://localhost:8080`
<br>
<a name="Use-pgAdmin"></a>
### Use pgAdmin
1 - Run the pgAdmin Container (`pgadmin`) with the `docker-compose up` command. Example:
```bash
docker-compose up -d postgres pgadmin
```
2 - Open your browser and visit the localhost on port **5050**: `http://localhost:5050`
<br>
@ -994,7 +1008,40 @@ It should be like this:
3 - Re-build the container `docker-compose build workspace`
<br>
<a name="Install-Aerospike-Extension"></a>
### Install Aerospike extension
1 - First install `aerospike` in the Workspace and the PHP-FPM Containers:
<br>
a) open the `docker-compose.yml` file
<br>
b) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the Workspace Container
<br>
c) set it to `true`
<br>
d) search for the `INSTALL_AEROSPIKE_EXTENSION` argument under the PHP-FPM Container
<br>
e) set it to `true`
It should be like this:
```yml
workspace:
build:
context: ./workspace
args:
- INSTALL_AEROSPIKE_EXTENSION=true
...
php-fpm:
build:
context: ./php-fpm
args:
- INSTALL_AEROSPIKE_EXTENSION=true
...
```
2 - Re-build the containers `docker-compose build workspace php-fpm`
<br>
<a name="debugging"></a>
@ -1002,6 +1049,8 @@ It should be like this:
*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 the following command from the Laravel root directory:
@ -1010,16 +1059,27 @@ Run the following command from the Laravel root directory:
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.
#### I see an error message containing `address already in use`
Make sure the ports for the services that you are trying to run (80, 3306, etc.) are not being used already by other programs, such as a built in `apache`/`httpd` service or other development tools you have installed.
#### I get Nginx error 404 Not Found on Windows.
1. Go to docker Settings on your Windows machine.
2. Click on the `Shared Drives` tab and check the drive that contains your project files.
3. Enter your windows username and password.
4. Go to the `reset` tab and click restart docker.
@ -1050,7 +1110,7 @@ Moving from Docker Toolbox (VirtualBox) to Docker Native (for Mac/Windows). Requ
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 :)
#### Read our [Contribution Guidelines](https://github.com/LaraDock/laradock/blob/master/_guides/contributing.md)
#### Read the [Contribution Guidelines](https://github.com/LaraDock/laradock/blob/master/CONTRIBUTING.md).
<a name="Help"></a>
## Help & Questions

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.
}
}

View File

@ -12,15 +12,19 @@ services:
- INSTALL_MONGO=false
- INSTALL_NODE=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
extra_hosts:
# IMPORTANT: Replace with your Docker Host IP (will be appended to /etc/hosts)
- "dockerhost:10.0.75.1"
ports:
- "22:22"
tty: true
### PHP-FPM Container #######################################
@ -34,6 +38,7 @@ services:
- INSTALL_ZIP_ARCHIVE=false
- INSTALL_MEMCACHED=false
- INSTALL_OPCACHE=false
- INSTALL_AEROSPIKE_EXTENSION=false
dockerfile: Dockerfile-70
volumes_from:
- volumes_source
@ -164,6 +169,20 @@ services:
ports:
- "6379:6379"
### Aerospike c Container #########################################
aerospike:
build: ./aerospike
volumes_from:
- workspace
- volumes_data
ports:
- "3000:3000"
- "3001:3001"
- "3002:3002"
- "3003:3003"
### Memcached Container #####################################
memcached:
@ -185,6 +204,21 @@ services:
links:
- php-fpm
### RabbitMQ Container ####################################
rabbitmq:
build: ./rabbitmq
ports:
- "5672:5672"
- "15671:15671"
- "8080:15672"
privileged: true
environment:
RABBITMQ_DEFAULT_USER: guest
RABBITMQ_DEFAULT_PASS: guest
links:
- php-fpm
### Beanstalkd Console Container ############################
beanstalkd-console:
@ -229,10 +263,19 @@ services:
# for mariadb container
# - "mariadb:db"
### pgAdmin Container ##################################
pgadmin:
build: ./pgadmin
ports:
- "5050:5050"
links:
- postgres
### Laravel Application Code Container ######################
volumes_source:
build: ./volumes/application
image: tianon/true
volumes:
- ../:/var/www/laravel
# Demonstration of how to mount multiple sites
@ -242,14 +285,15 @@ services:
### Databases Data Container ################################
volumes_data:
build: ./volumes/data
image: tianon/true
volumes:
- ./data/mysql:/var/lib/mysql
- ./data/postgres:/var/lib/postgres
- ./data/postgres:/var/lib/postgresql/data
- ./data/memcached:/var/lib/memcached
- ./data/redis:/data
- ./data/neo4j:/var/lib/neo4j/data
- ./data/mongo:/data/db
- ./data/aerospike:/opt/aerospike/data
- ./data/sessions:/sessions
### Add more Containers below ###############################

5
pgadmin/Dockerfile Normal file
View File

@ -0,0 +1,5 @@
FROM fenglc/pgadmin4
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
EXPOSE 5050

View File

@ -41,7 +41,6 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
#####################################
ARG INSTALL_XDEBUG=true
ENV INSTALL_XDEBUG ${INSTALL_XDEBUG}
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
pecl install xdebug && \
@ -56,7 +55,6 @@ COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
#####################################
ARG INSTALL_MONGO=true
ENV INSTALL_MONGO ${INSTALL_MONGO}
RUN if [ ${INSTALL_MONGO} = true ]; then \
# Install the mongodb extension
pecl install mongodb && \
@ -68,7 +66,6 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
#####################################
ARG INSTALL_ZIP_ARCHIVE=true
ENV INSTALL_ZIP_ARCHIVE ${INSTALL_ZIP_ARCHIVE}
RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
# Install the zip extension
pecl install zip && \
@ -80,18 +77,38 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
#####################################
ARG INSTALL_MEMCACHED=true
ENV INSTALL_MEMCACHED ${INSTALL_MEMCACHED}
RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
# Install the php memcached extension
pecl install memcached && \
docker-php-ext-enable memcached \
;fi
#####################################
# PHP Aerospike:
#####################################
ARG INSTALL_AEROSPIKE_EXTENSION=true
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
# Copy aerospike configration for remote debugging
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
# Install the php aerospike extension
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
&& mkdir -p aerospike-client-php \
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
&& ( \
cd aerospike-client-php/src/aerospike \
&& phpize \
&& ./build.sh \
&& make install \
) \
&& rm /tmp/aerospike-client-php.tar.gz \
;fi
#####################################
# Opcache:
#####################################
ARG INSTALL_OPCACHE=true
ENV INSTALL_OPCACHE ${INSTALL_OPCACHE}
RUN if [ ${INSTALL_OPCACHE} = true ]; then \
docker-php-ext-install opcache && \
docker-php-ext-enable opcache \

View File

@ -41,7 +41,6 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
#####################################
ARG INSTALL_XDEBUG=true
ENV INSTALL_XDEBUG ${INSTALL_XDEBUG}
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Install the xdebug extension
pecl install xdebug && \
@ -56,7 +55,6 @@ COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
#####################################
ARG INSTALL_MONGO=true
ENV INSTALL_MONGO ${INSTALL_MONGO}
RUN if [ ${INSTALL_MONGO} = true ]; then \
# Install the mongodb extension
pecl install mongodb && \
@ -68,7 +66,6 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
#####################################
ARG INSTALL_ZIP_ARCHIVE=true
ENV INSTALL_ZIP_ARCHIVE ${INSTALL_ZIP_ARCHIVE}
RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
# Install the zip extension
pecl install zip && \
@ -80,7 +77,6 @@ RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
#####################################
ARG INSTALL_MEMCACHED=true
ENV INSTALL_MEMCACHED ${INSTALL_MEMCACHED}
RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
# Install the php memcached extension
curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
@ -98,11 +94,32 @@ RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
&& docker-php-ext-enable memcached \
;fi
#####################################
# PHP Aerospike:
#####################################
ARG INSTALL_AEROSPIKE_EXTENSION=true
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
# Copy aerospike configration for remote debugging
COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
# Install the php aerospike extension
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
&& mkdir -p aerospike-client-php \
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
&& ( \
cd aerospike-client-php/src/aerospike \
&& phpize \
&& ./build.sh \
&& make install \
) \
&& rm /tmp/aerospike-client-php.tar.gz \
;fi
#####################################
# Opcache:
#####################################
ARG INSTALL_OPCACHE=true
ENV INSTALL_OPCACHE ${INSTALL_OPCACHE}
RUN if [ ${INSTALL_OPCACHE} = true ]; then \
docker-php-ext-install opcache && \
docker-php-ext-enable opcache \
@ -127,4 +144,4 @@ WORKDIR /var/www/laravel
CMD ["php-fpm"]
EXPOSE 9000
EXPOSE 9000

3
php-fpm/aerospike.ini Normal file
View File

@ -0,0 +1,3 @@
extension=aerospike.so
aerospike.udf.lua_system_path=/usr/local/aerospike/lua
aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua

View File

@ -7,5 +7,3 @@ VOLUME /sessions
# We expose phpMyAdmin on port 80
EXPOSE 80
ENTRYPOINT [ "/run.sh" ]

12
rabbitmq/Dockerfile Normal file
View File

@ -0,0 +1,12 @@
#
# RabbitMQ Dockerfile
#
# https://github.com/dockerfile/rabbitmq
#
# Pull base image.
FROM rabbitmq
RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15671 15672

View File

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

View File

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

View File

@ -49,6 +49,7 @@ ARG INSTALL_XDEBUG=true
ENV INSTALL_XDEBUG ${INSTALL_XDEBUG}
RUN if [ ${INSTALL_XDEBUG} = true ]; then \
# Load the xdebug extension only with phpunit commands
apt-get update && \
apt-get install -y --force-yes php7.0-xdebug && \
sed -i 's/^/;/g' /etc/php/7.0/cli/conf.d/20-xdebug.ini && \
echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/laravel/vendor/bin/phpunit'" >> ~/.bashrc \
@ -141,16 +142,18 @@ USER laradock
#####################################
# Check if NVM needs to be installed
ARG NODE_VERSION=stable
ENV NODE_VERSION ${NODE_VERSION}
ARG INSTALL_NODE=true
ENV INSTALL_NODE ${INSTALL_NODE}
ENV NVM_DIR /home/laradock/.nvm
RUN if [ ${INSTALL_NODE} = true ]; then \
# Install nvm (A Node Version Manager)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.3/install.sh | bash && \
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.6/install.sh | bash && \
. ~/.nvm/nvm.sh && \
nvm install stable && \
nvm use stable && \
nvm alias stable && \
nvm install ${NODE_VERSION} && \
nvm use ${NODE_VERSION} && \
nvm alias ${NODE_VERSION} && \
npm install -g gulp bower \
;fi
@ -162,6 +165,28 @@ RUN if [ ${INSTALL_NODE} = true ]; then \
echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.bashrc \
;fi
#####################################
# PHP Aerospike:
#####################################
USER root
ARG INSTALL_AEROSPIKE_EXTENSION=true
ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
# Copy aerospike configration for remote debugging
COPY ./aerospike.ini /etc/php/7.0/cli/conf.d/aerospike.ini
RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
# Install the php aerospike extension
curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
&& mkdir -p aerospike-client-php \
&& tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
&& ( \
cd aerospike-client-php/src/aerospike \
&& phpize \
&& ./build.sh \
&& make install \
) \
&& rm /tmp/aerospike-client-php.tar.gz \
;fi
#
#--------------------------------------------------------------------------
# Final Touch

3
workspace/aerospike.ini Normal file
View File

@ -0,0 +1,3 @@
extension=aerospike.so
aerospike.udf.lua_system_path=/usr/local/aerospike/lua
aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua

View File

@ -0,0 +1,46 @@
PuTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: imported-openssh-key
Public-Lines: 12
AAAAB3NzaC1yc2EAAAADAQABAAACAQD0tfQNVXxVjST53ny/5Op7ot+GeIGEGAEn
r9kgYAXK6GqnJ/3UOfWKFxl4gEusLj4hpGrT/GJVx2nIG7d/IaRifJvns+Lak4Wj
+17zyPRF54/mic6a0MAREJH5aTOLuSK+DhnhTUqAt4mfdHpYmBXWdTAXDCg8gP5Q
LdGkdxL9M+GBk4tKiDx1hRfHV9uY6ci0lspQrhnPzzeWLktTA8uWYZlus1gv3SXX
6zVD2+XB6/J7ZarNcK9iHoMLddFggSdnGs6kNLJQe0DAwncdeCQizcdXV2A9O33v
aY/b0A1obUxuoCit629AwyQ9C/71f3rBSrfgUSb1pOVPmhLRJDZenf/NS8FIW194
/u5slvr1u6fj/iiCYctt0PNg00UAnlybWDDKD3l5e8Kbl16uTw1/5AEc6Wl3aCmt
WYpwRGeue/hnUzOXr9/SjhQLfB+ZCASt83N+u0kV7ni7G5/04z11dqZwkk6x1SAz
WGJnp76piwd4AP2fu8KqNAmWsyEIZmmR5JSGS5i4sGuSGog6rZWop1LwIfNjdOLF
bs+rnF0oOmpgZReo8fH+PmOkq3iHaPQvXO3Cj2d52HVxtHI+n2iKjDu3CzHIP31v
fqsZKHfmoo3ckFW4yfrPcXy0gQswPj0jJUIbKLb6OfuptUsQ5SvkiwWoW4irnO3l
KF9KLo3t7w==
Private-Lines: 28
AAACADW3YzUyGLLm4sD+t7+fzmEJZaus9DE827QMg8r5iQv7bL34p11Yw69mVq7+
6p2HIRhdcR3LfwJ5XZ0RiHwdtGnyFH8OG7QDQgi2+ybka8qUhCAFDBcrz51vV7u5
/hijsR6rFb9BKiOLJmicNucPq2uCGeZVQtfVMP4EsMo7YS23n77D1oWr1imt54RY
otm0J9yMZSjEruHRCNCspNg6Mwx1rCqCr88B6na1KOIWeR7SXk38CTxDihwtunJf
kHBwqWeWmNmuv52vEI2/okoTv0rshN+FTJjkYEaXk36a8vaDV43JFmTnE2rR6ziD
U5osO5QGhMp2xeiSI8wPdCX4nv5EKgL0+4a610IAhTa70KgUB8ommwqH6wZHKuLO
8PmGVLfUXvzOJ/tbm5uL2y6kDp60lhsr6bBwOwmCa1z6rnXGwfdPU4O9Fxu3O9gU
TwnO5yE3ho+2xj5b/BpMNUN3KYW89KxiNfsGWrd+emDa4kq3NYQhAT6tjuALes2g
1IThgVsgCNMziQi4gWeRWrejYGZDtYeNvdRJ6WEXEE8nrucEwtLdKFcuPKK7bZTx
HEpxs4qkSKa4IpFJUR2mw2emzeHbLxzY89ZZLssbMCIJ6kuNfCoct7gv9y/HxL0p
lFdCd5qSQpOiC5Xs32nQ72muMlyRviOj3jWJoN6lVkgdu4/xAAABAQD68AEIqefw
8DhFaLE9wjJuPqJCkc/O3q5nG/eKXcihjcCebb4QduWgT1VwfemFAQChNCzF36Sh
y0cep0mLpjE5OaaweXeOKUDeQqDQDtGKfvTYM5sLdz1VI57tX2uLM9CcV7CTIM+a
k6hbdvLQNi/QMW0DzM1+BKQV6pkSgGdDIyib2UFhwn1UquJR90K8+CHdlX9LMR9y
npm0wtG+0RbM7HvlzDDqQu9S5R6RCX/tRuvfo7P7vUHrpU3n251Itg8Bv6y3OFtB
JTsts0pouXKAFESqdN5eP5UJcaevE5FlLUV+o726dvGD8VgEMEy3/aNe3oSXPrZi
CMMS0aNxMD+tAAABAQD5pcpbrO58MbzwM+xfmmyXsK7YXCGrWPlQsa+mS65xpWyy
c42YWqLiMfssRlWMRweDoaEOobK1ppSvUqFdVa22fSibapkgoWDsFHsTk9H0cq4i
DR2jryk9//kwpPpMqrWAHWXwHjzV1Vzy2ZoeMdsvP1SUh/y4ttd8/URjIAMConjG
1A206Pu7PSTlrIiBZTqxwYLcSUtPN9a6xc8nJYU1XnAC0IjRe7hT8h007SsuIEjw
FILxULgxrD9rVljWeWJcF+Oa0neLsDazfr5gbXW9eaLYEoVdrzQEzv4v3Om3F/Y+
/sfVi/LHht9VnbEJMsLKO1SPjAYaSYcxMLwzSCeLAAABAQC/gAQCLbqo4FylEVST
3IP8rxA5RGbLRDJ2j+ywEzOuy2ufGI/CfxeG/+jF5E0/uBRm8rrnMmaJaNr42hF4
r5kjNM5uficOVucU3FluQqae73zfUFeAQBft+4tTH+sR8jo+LvEBGinW1wHv7di4
5I3at2HMjMtZgWPPIqCBIay0UKysW4eEwXYC9cWg9kPcb2y56zadrKxGZqHOPezH
2A1iOuzpvw0mG0xHUY4Eg5aZxcWB1jMf7bbxTAAMxQiBnw0bPEf5zpWzeKL0obxT
/NhCgmV7/Fqs0GCbXEEgJo0zAVemALOAYRW3pYvt8FoCOopo4ADyfmdWlAvzCy46
k7Fo
Private-MAC: 4ea4cef3fa63f1068dcd512c477c61dd7e85bb38

View File

@ -6,12 +6,21 @@
# Grab full name of php-fpm container
PHP_FPM_CONTAINER=$(docker-compose ps | grep php-fpm | cut -d" " -f 1)
# Grab OS type
if [[ "$(uname)" == "Darwin" ]]; then
OS_TYPE="OSX"
else
OS_TYPE=$(expr substr $(uname -s) 1 5)
fi
xdebug_status ()
{
echo 'xDebug status'
# If running on Windows, need to prepend with winpty :(
if [[ "$(expr substr $(uname -s) 1 5)" == "MINGW" ]]; then
if [[ $OS_TYPE == "MINGW" ]]; then
winpty docker exec -it $PHP_FPM_CONTAINER bash -c 'php -v'
else
@ -20,6 +29,7 @@ xdebug_status ()
}
xdebug_start ()
{
echo 'Start xDebug'
@ -30,7 +40,7 @@ xdebug_start ()
# If running on Windows, need to prepend with winpty :(
if [[ "$(expr substr $(uname -s) 1 5)" == "MINGW" ]]; then
if [[ $OS_TYPE == "MINGW" ]]; then
winpty docker exec -it $PHP_FPM_CONTAINER bash -c "${ON_CMD}"
docker restart $PHP_FPM_CONTAINER
winpty docker exec -it $PHP_FPM_CONTAINER bash -c 'php -v'
@ -40,9 +50,9 @@ xdebug_start ()
docker restart $PHP_FPM_CONTAINER
docker exec -it $PHP_FPM_CONTAINER bash -c 'php -v'
fi
}
xdebug_stop ()
{
echo 'Stop xDebug'
@ -52,7 +62,7 @@ xdebug_stop ()
# If running on Windows, need to prepend with winpty :(
if [[ "$(expr substr $(uname -s) 1 5)" == "MINGW" ]]; then
if [[ $OS_TYPE == "MINGW" ]]; then
# This is the equivalent of:
# winpty docker exec -it laradock_php-fpm_1 bash -c 'bla bla bla'
# Thanks to @michaelarnauts at https://github.com/docker/compose/issues/593