Compare commits
147 Commits
Author | SHA1 | Date | |
---|---|---|---|
f97f0b0d11 | |||
05e1dd4c13 | |||
fc78ab7764 | |||
ef8579987f | |||
4dda3b969e | |||
4d2452101a | |||
233cfb5b07 | |||
63b9ec2bd8 | |||
d5a51d4de9 | |||
c7fae1a807 | |||
d6329c26b3 | |||
a96ee88692 | |||
2799a94a9f | |||
5bcbe0d291 | |||
9e7a669d5b | |||
9b084433c3 | |||
fc303dee08 | |||
d75a43c615 | |||
06337e6024 | |||
16b82d066e | |||
074deec781 | |||
2d382b683a | |||
68576f9022 | |||
2df00ecdad | |||
aeb5a6bb63 | |||
2bbf59ddda | |||
dca0545293 | |||
5f99478c76 | |||
48a53f1d24 | |||
11cdfd440b | |||
14cbe9f935 | |||
42d63236f1 | |||
d01d087431 | |||
11c65c4a00 | |||
1b9630e8a1 | |||
3a714339da | |||
65078505c1 | |||
e0b4734dab | |||
243392444f | |||
72a8fc049d | |||
de6db93da8 | |||
1af9dc5ac2 | |||
62878e7c49 | |||
3cd1f070e1 | |||
fb5ea7f42c | |||
aa8be6f95b | |||
aa0a726945 | |||
e5e04e4e18 | |||
44d8720400 | |||
f0200626ba | |||
69406db3e0 | |||
bcb749151a | |||
ca413edff4 | |||
f6d1d6f617 | |||
117382a050 | |||
2e930df2a7 | |||
4922c5fafd | |||
198c38f6cd | |||
8d216f83d5 | |||
05c5fcf216 | |||
fccee522c6 | |||
f3eb6a5fc4 | |||
685c34d12d | |||
ceba1af3ae | |||
c4100b5052 | |||
1148a3d051 | |||
bec1a32550 | |||
72cde8a8ea | |||
4f9cdb02c6 | |||
1673a80daf | |||
f130381cfe | |||
eda286ded2 | |||
a8b4b61e28 | |||
124a3553e6 | |||
3ff4aaca79 | |||
4c06a03ead | |||
1cb131ba36 | |||
99b54c5f7d | |||
8993cccc2c | |||
1090bb4db6 | |||
9c7054abe2 | |||
e7decdaaf7 | |||
18bf12bfde | |||
d829482a06 | |||
86c6389650 | |||
991e28046d | |||
ccbc73c6bc | |||
246c7366ba | |||
762e2ec07b | |||
adaaa25f47 | |||
11a13a0c33 | |||
c642560993 | |||
ea9f5c635f | |||
fd4253afb6 | |||
73310e45e8 | |||
7f91fc9798 | |||
a8a7685a40 | |||
06c4c19a6f | |||
8bff7656f6 | |||
5c9eb97db5 | |||
588819ab6d | |||
170b63a3ba | |||
19813e48c3 | |||
be7b8ee056 | |||
01a056dd25 | |||
70e1b0fe41 | |||
0959b25c05 | |||
1d8336a9e1 | |||
f0e2d83618 | |||
7f1deb0342 | |||
703887a2a6 | |||
84e6b2b6ff | |||
c3ff9e485b | |||
77f9183c83 | |||
378181044c | |||
01bdaae690 | |||
68aca9f8f9 | |||
6d0ecaecf4 | |||
a434588a66 | |||
5aa01b1757 | |||
3b2831bf1d | |||
7171996843 | |||
66f08a4f60 | |||
07a07ab3ac | |||
fb4fcdcb23 | |||
a69681b07c | |||
2c05c87400 | |||
16a1041ef5 | |||
5ef193d55b | |||
4d8a798224 | |||
1574231a80 | |||
6eb3a9bd5f | |||
377f24fe2b | |||
51b6d4f844 | |||
97500508f5 | |||
7dcf481d21 | |||
efd062fd88 | |||
504c9c59d5 | |||
4edf941872 | |||
36b49f5ae2 | |||
e49836ba90 | |||
84f766363d | |||
03c991c89d | |||
fdba7e7c09 | |||
405067d4af | |||
7f4e411d3d | |||
e946573d75 |
12
.editorconfig
Normal file
12
.editorconfig
Normal 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
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1,3 @@
|
|||||||
/logs
|
/logs
|
||||||
|
/data
|
||||||
|
.env
|
12
caddy/Caddyfile
Normal file
12
caddy/Caddyfile
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# Docs: https://caddyserver.com/docs/caddyfile
|
||||||
|
0.0.0.0:80
|
||||||
|
fastcgi / php-fpm:9000 php
|
||||||
|
rewrite {
|
||||||
|
to /index.php?{query}
|
||||||
|
}
|
||||||
|
browse
|
||||||
|
log stdout
|
||||||
|
errors stdout
|
||||||
|
# Uncomment to enable TLS (HTTPS)
|
||||||
|
# Change the first list to listen on port 443 when enabling TLS
|
||||||
|
#tls self_signed
|
22
caddy/Dockerfile
Normal file
22
caddy/Dockerfile
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
FROM alpine:3.4
|
||||||
|
MAINTAINER Eric Pfeiffer <computerfr33k@users.noreply.github.com>
|
||||||
|
|
||||||
|
LABEL caddy_version="0.9.0" 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://github.com/mholt/caddy/releases/download/v0.9.0/caddy_linux_amd64.tar.gz" \
|
||||||
|
| tar --no-same-owner -C /usr/bin/ -xz caddy_linux_amd64 \
|
||||||
|
&& mv /usr/bin/caddy_linux_amd64 /usr/bin/caddy \
|
||||||
|
&& chmod 0755 /usr/bin/caddy \
|
||||||
|
&& /usr/bin/caddy -version
|
||||||
|
|
||||||
|
EXPOSE 80 443 2015
|
||||||
|
WORKDIR /var/www/laravel/public
|
||||||
|
|
||||||
|
ENTRYPOINT ["caddy"]
|
||||||
|
CMD ["-conf", "/etc/Caddyfile"]
|
@ -5,43 +5,50 @@ services:
|
|||||||
### Nginx Server Container ##################################
|
### Nginx Server Container ##################################
|
||||||
|
|
||||||
nginx:
|
nginx:
|
||||||
build: ./nginx
|
build:
|
||||||
|
context: ./nginx
|
||||||
|
args:
|
||||||
|
- PHP_UPSTREAM=${PHP_PROCESS_MANAGER}
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- php
|
- volumes_source
|
||||||
volumes:
|
volumes:
|
||||||
- ./logs/nginx/:/var/log/nginx
|
- ./logs/nginx/:/var/log/nginx
|
||||||
ports:
|
ports:
|
||||||
- "80:80"
|
- "80:80"
|
||||||
|
- "443:443"
|
||||||
links:
|
links:
|
||||||
- php
|
- ${PHP_PROCESS_MANAGER}
|
||||||
|
|
||||||
### PHP Container ###########################################
|
### PHP-FPM Container #######################################
|
||||||
|
|
||||||
php:
|
php-fpm:
|
||||||
build: ./php
|
build:
|
||||||
volumes:
|
context: ./php-fpm
|
||||||
- ../:/var/www/laravel
|
dockerfile: Dockerfile-70
|
||||||
- ./logs/php/:/usr/local/var/log
|
volumes_from:
|
||||||
|
- volumes_source
|
||||||
expose:
|
expose:
|
||||||
- "9000"
|
- "9000"
|
||||||
|
links:
|
||||||
|
- workspace
|
||||||
|
|
||||||
### DATA Container ##########################################
|
### HHVM Container ##########################################
|
||||||
|
|
||||||
data:
|
hhvm:
|
||||||
build: ./data
|
build: ./hhvm
|
||||||
volumes:
|
volumes_from:
|
||||||
- /var/lib/mysql
|
- volumes_source
|
||||||
- /var/lib/postgres
|
expose:
|
||||||
- /var/lib/mariadb
|
- "9000"
|
||||||
- /var/lib/redis
|
links:
|
||||||
- /var/lib/memcached
|
- workspace
|
||||||
|
|
||||||
### MySQL Container #########################################
|
### MySQL Container #########################################
|
||||||
|
|
||||||
mysql:
|
mysql:
|
||||||
build: ./mysql
|
build: ./mysql
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- data
|
- volumes_data
|
||||||
ports:
|
ports:
|
||||||
- "3306:3306"
|
- "3306:3306"
|
||||||
environment:
|
environment:
|
||||||
@ -49,30 +56,26 @@ services:
|
|||||||
MYSQL_USER: homestead
|
MYSQL_USER: homestead
|
||||||
MYSQL_PASSWORD: secret
|
MYSQL_PASSWORD: secret
|
||||||
MYSQL_ROOT_PASSWORD: root
|
MYSQL_ROOT_PASSWORD: root
|
||||||
links:
|
|
||||||
- php
|
|
||||||
|
|
||||||
### PostgreSQL Container ####################################
|
### PostgreSQL Container ####################################
|
||||||
|
|
||||||
postgres:
|
postgres:
|
||||||
build: ./postgres
|
build: ./postgres
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- data
|
- volumes_data
|
||||||
ports:
|
ports:
|
||||||
- "5432:5432"
|
- "5432:5432"
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_DB: homestead
|
POSTGRES_DB: homestead
|
||||||
POSTGRES_USER: homestead
|
POSTGRES_USER: homestead
|
||||||
POSTGRES_PASSWORD: secret
|
POSTGRES_PASSWORD: secret
|
||||||
links:
|
|
||||||
- php
|
|
||||||
|
|
||||||
### MariaDB Container #######################################
|
### MariaDB Container #######################################
|
||||||
|
|
||||||
mariadb:
|
mariadb:
|
||||||
build: ./mariadb
|
build: ./mariadb
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- data
|
- volumes_data
|
||||||
ports:
|
ports:
|
||||||
- "3306:3306"
|
- "3306:3306"
|
||||||
environment:
|
environment:
|
||||||
@ -80,18 +83,48 @@ services:
|
|||||||
MYSQL_USER: homestead
|
MYSQL_USER: homestead
|
||||||
MYSQL_PASSWORD: secret
|
MYSQL_PASSWORD: secret
|
||||||
MYSQL_ROOT_PASSWORD: root
|
MYSQL_ROOT_PASSWORD: root
|
||||||
links:
|
|
||||||
- php
|
### Neo4j Container #########################################
|
||||||
|
|
||||||
|
neo4j:
|
||||||
|
build: ./neo4j
|
||||||
|
ports:
|
||||||
|
- "7474:7474"
|
||||||
|
- "1337:1337"
|
||||||
|
environment:
|
||||||
|
- NEO4J_AUTH=homestead:secret
|
||||||
|
volumes_from:
|
||||||
|
- volumes_data
|
||||||
|
|
||||||
|
### MongoDB Container #######################################
|
||||||
|
|
||||||
|
mongo:
|
||||||
|
build: ./mongo
|
||||||
|
ports:
|
||||||
|
- "27017:27017"
|
||||||
|
volumes_from:
|
||||||
|
- volumes_data
|
||||||
|
|
||||||
### Redis Container #########################################
|
### Redis Container #########################################
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
build: ./redis
|
build: ./redis
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- data
|
- volumes_data
|
||||||
ports:
|
ports:
|
||||||
- "6379:6379"
|
- "6379:6379"
|
||||||
|
|
||||||
|
### Memcached Container #####################################
|
||||||
|
|
||||||
|
memcached:
|
||||||
|
build: ./memcached
|
||||||
|
volumes_from:
|
||||||
|
- volumes_data
|
||||||
|
ports:
|
||||||
|
- "11211:11211"
|
||||||
|
links:
|
||||||
|
- php-fpm
|
||||||
|
|
||||||
### Beanstalkd Container ####################################
|
### Beanstalkd Container ####################################
|
||||||
|
|
||||||
beanstalkd:
|
beanstalkd:
|
||||||
@ -99,8 +132,10 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- "11300:11300"
|
- "11300:11300"
|
||||||
privileged: true
|
privileged: true
|
||||||
|
links:
|
||||||
|
- php-fpm
|
||||||
|
|
||||||
### Beanstalkd-Console Container ############################
|
### Beanstalkd Console Container ############################
|
||||||
|
|
||||||
beanstalkd-console:
|
beanstalkd-console:
|
||||||
build: ./beanstalkd-console
|
build: ./beanstalkd-console
|
||||||
@ -109,13 +144,51 @@ services:
|
|||||||
links:
|
links:
|
||||||
- beanstalkd
|
- beanstalkd
|
||||||
|
|
||||||
### Memcached Container #########################################
|
### Workspace Utilities Container ###########################
|
||||||
|
|
||||||
memcached:
|
workspace:
|
||||||
build: ./memcached
|
build:
|
||||||
|
context: ./workspace
|
||||||
|
args:
|
||||||
|
- INSTALL_PRESTISSIMO=false
|
||||||
volumes_from:
|
volumes_from:
|
||||||
- data
|
- volumes_source
|
||||||
|
tty: true
|
||||||
|
|
||||||
|
### Laravel Application Code Container ######################
|
||||||
|
|
||||||
|
volumes_source:
|
||||||
|
build: ./volumes/application
|
||||||
|
volumes:
|
||||||
|
- ../:/var/www/laravel
|
||||||
|
|
||||||
|
### Databases Data Container ################################
|
||||||
|
|
||||||
|
volumes_data:
|
||||||
|
build: ./volumes/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
|
||||||
|
|
||||||
|
### Caddy Server Container ##################################
|
||||||
|
# Edit the Caddyfile if needed (./caddy/Caddyfile)
|
||||||
|
|
||||||
|
caddy:
|
||||||
|
build: ./caddy
|
||||||
|
volumes_from:
|
||||||
|
- volumes_source
|
||||||
ports:
|
ports:
|
||||||
- "11211:11211"
|
- "80:80"
|
||||||
|
- "443:443"
|
||||||
|
- "2015:2015"
|
||||||
|
volumes:
|
||||||
|
- ./caddy/Caddyfile:/etc/Caddyfile
|
||||||
|
links:
|
||||||
|
- php-fpm
|
||||||
|
|
||||||
### Add more Containers below ###############################
|
### Add more Containers below ###############################
|
||||||
|
21
hhvm/Dockerfile
Normal file
21
hhvm/Dockerfile
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
FROM ubuntu:14.04
|
||||||
|
|
||||||
|
RUN apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449
|
||||||
|
RUN apt-get update -y && apt-get install -y software-properties-common \
|
||||||
|
&& add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main" \
|
||||||
|
&& apt-get update -y \
|
||||||
|
&& apt-get install -y hhvm \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
RUN mkdir -p /var/www/laravel
|
||||||
|
|
||||||
|
ADD server.ini /etc/hhvm/server.ini
|
||||||
|
|
||||||
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
CMD ["/usr/bin/hhvm", "-m", "server", "-c", "/etc/hhvm/server.ini"]
|
||||||
|
|
||||||
|
EXPOSE 9000
|
20
hhvm/server.ini
Normal file
20
hhvm/server.ini
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
; php options
|
||||||
|
|
||||||
|
pid = /var/run/hhvm/pid
|
||||||
|
|
||||||
|
; hhvm specific
|
||||||
|
hhvm.server.port = 9000
|
||||||
|
hhvm.server.type = fastcgi
|
||||||
|
hhvm.server.default_document = index.php
|
||||||
|
hhvm.server.error_document404 = index.php
|
||||||
|
hhvm.server.upload.upload_max_file_size = 25M
|
||||||
|
hhvm.log.level = Error
|
||||||
|
hhvm.log.header = true
|
||||||
|
hhvm.log.access[default][file] = /var/log/hhvm/access.log
|
||||||
|
hhvm.log.access[default][format] = "%h %l %u %t \"%r\" %>s %b"
|
||||||
|
hhvm.server.source_root=/var/www/laravel/public
|
||||||
|
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc
|
||||||
|
|
||||||
|
; Uncomment to log to files instead of STDOUT
|
||||||
|
;hhvm.log.use_log_file = true
|
||||||
|
;hhvm.log.file = /var/log/hhvm/error.log
|
12
mongo/Dockerfile
Normal file
12
mongo/Dockerfile
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
FROM mongo:latest
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
#COPY mongo.conf /usr/local/etc/mongo/mongo.conf
|
||||||
|
|
||||||
|
VOLUME /data/db /data/configdb
|
||||||
|
|
||||||
|
CMD ["mongod"]
|
||||||
|
|
||||||
|
EXPOSE 27017
|
||||||
|
|
7
neo4j/Dockerfile
Normal file
7
neo4j/Dockerfile
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
FROM tpires/neo4j
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
VOLUME /var/lib/neo4j/data
|
||||||
|
|
||||||
|
EXPOSE 7474 1337
|
@ -5,7 +5,9 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
ADD nginx.conf /etc/nginx/
|
ADD nginx.conf /etc/nginx/
|
||||||
ADD laravel.conf /etc/nginx/sites-available/
|
ADD laravel.conf /etc/nginx/sites-available/
|
||||||
|
|
||||||
RUN echo "upstream php-upstream { server php:9000; }" > /etc/nginx/conf.d/upstream.conf
|
ARG PHP_UPSTREAM
|
||||||
|
|
||||||
|
RUN echo "upstream php-upstream { server ${PHP_UPSTREAM}:9000; }" > /etc/nginx/conf.d/upstream.conf
|
||||||
|
|
||||||
RUN usermod -u 1000 www-data
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
@ -15,10 +15,11 @@ http {
|
|||||||
tcp_nodelay on;
|
tcp_nodelay on;
|
||||||
keepalive_timeout 15;
|
keepalive_timeout 15;
|
||||||
types_hash_max_size 2048;
|
types_hash_max_size 2048;
|
||||||
|
client_max_body_size 20M;
|
||||||
include /etc/nginx/mime.types;
|
include /etc/nginx/mime.types;
|
||||||
default_type application/octet-stream;
|
default_type application/octet-stream;
|
||||||
access_log off;
|
access_log on;
|
||||||
error_log off;
|
error_log on;
|
||||||
gzip on;
|
gzip on;
|
||||||
gzip_disable "msie6";
|
gzip_disable "msie6";
|
||||||
include /etc/nginx/conf.d/*.conf;
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
52
php-fpm/Dockerfile-55
Normal file
52
php-fpm/Dockerfile-55
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
FROM php:5.5-fpm
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
||||||
|
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libpq-dev \
|
||||||
|
libmemcached-dev \
|
||||||
|
curl \
|
||||||
|
libjpeg-dev \
|
||||||
|
libpng12-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libmcrypt-dev \
|
||||||
|
--no-install-recommends \
|
||||||
|
&& rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# install mcrypt library
|
||||||
|
RUN docker-php-ext-install mcrypt
|
||||||
|
|
||||||
|
# Install mongodb driver
|
||||||
|
RUN pecl install mongodb
|
||||||
|
|
||||||
|
# configure gd library
|
||||||
|
RUN docker-php-ext-configure gd \
|
||||||
|
--enable-gd-native-ttf \
|
||||||
|
--with-jpeg-dir=/usr/lib \
|
||||||
|
--with-freetype-dir=/usr/include/freetype2
|
||||||
|
|
||||||
|
# Install extensions using the helper script provided by the base image
|
||||||
|
RUN docker-php-ext-install \
|
||||||
|
pdo_mysql \
|
||||||
|
pdo_pgsql \
|
||||||
|
gd
|
||||||
|
|
||||||
|
# Install memcached
|
||||||
|
RUN pecl install memcached \
|
||||||
|
&& docker-php-ext-enable memcached
|
||||||
|
|
||||||
|
# Install xdebug
|
||||||
|
RUN pecl install xdebug \
|
||||||
|
&& docker-php-ext-enable xdebug
|
||||||
|
|
||||||
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
CMD ["php-fpm"]
|
||||||
|
|
||||||
|
EXPOSE 9000
|
52
php-fpm/Dockerfile-56
Normal file
52
php-fpm/Dockerfile-56
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
FROM php:5.6-fpm
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
||||||
|
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libpq-dev \
|
||||||
|
libmemcached-dev \
|
||||||
|
curl \
|
||||||
|
libjpeg-dev \
|
||||||
|
libpng12-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libmcrypt-dev \
|
||||||
|
--no-install-recommends \
|
||||||
|
&& rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# install mcrypt library
|
||||||
|
RUN docker-php-ext-install mcrypt
|
||||||
|
|
||||||
|
# Install mongodb driver
|
||||||
|
RUN pecl install mongodb
|
||||||
|
|
||||||
|
# configure gd library
|
||||||
|
RUN docker-php-ext-configure gd \
|
||||||
|
--enable-gd-native-ttf \
|
||||||
|
--with-jpeg-dir=/usr/lib \
|
||||||
|
--with-freetype-dir=/usr/include/freetype2
|
||||||
|
|
||||||
|
# Install extensions using the helper script provided by the base image
|
||||||
|
RUN docker-php-ext-install \
|
||||||
|
pdo_mysql \
|
||||||
|
pdo_pgsql \
|
||||||
|
gd
|
||||||
|
|
||||||
|
# Install memcached
|
||||||
|
RUN pecl install memcached \
|
||||||
|
&& docker-php-ext-enable memcached
|
||||||
|
|
||||||
|
# Install xdebug
|
||||||
|
RUN pecl install xdebug \
|
||||||
|
&& docker-php-ext-enable xdebug
|
||||||
|
|
||||||
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
CMD ["php-fpm"]
|
||||||
|
|
||||||
|
EXPOSE 9000
|
63
php-fpm/Dockerfile-70
Normal file
63
php-fpm/Dockerfile-70
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
FROM php:7.0-fpm
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
||||||
|
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
libpq-dev \
|
||||||
|
libmemcached-dev \
|
||||||
|
curl \
|
||||||
|
libjpeg-dev \
|
||||||
|
libpng12-dev \
|
||||||
|
libfreetype6-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libmcrypt-dev \
|
||||||
|
--no-install-recommends \
|
||||||
|
&& rm -r /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# install mcrypt library
|
||||||
|
RUN docker-php-ext-install mcrypt
|
||||||
|
|
||||||
|
# Install mongodb driver
|
||||||
|
RUN pecl install mongodb
|
||||||
|
|
||||||
|
# configure gd library
|
||||||
|
RUN docker-php-ext-configure gd \
|
||||||
|
--enable-gd-native-ttf \
|
||||||
|
--with-jpeg-dir=/usr/lib \
|
||||||
|
--with-freetype-dir=/usr/include/freetype2
|
||||||
|
|
||||||
|
# Install extensions using the helper script provided by the base image
|
||||||
|
RUN docker-php-ext-install \
|
||||||
|
pdo_mysql \
|
||||||
|
pdo_pgsql \
|
||||||
|
gd
|
||||||
|
|
||||||
|
# Install Memcached for php 7
|
||||||
|
RUN curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
|
||||||
|
&& mkdir -p memcached \
|
||||||
|
&& tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \
|
||||||
|
&& ( \
|
||||||
|
cd memcached \
|
||||||
|
&& phpize \
|
||||||
|
&& ./configure \
|
||||||
|
&& make -j$(nproc) \
|
||||||
|
&& make install \
|
||||||
|
) \
|
||||||
|
&& rm -r memcached \
|
||||||
|
&& rm /tmp/memcached.tar.gz \
|
||||||
|
&& docker-php-ext-enable memcached
|
||||||
|
|
||||||
|
# Install xdebug
|
||||||
|
RUN pecl install xdebug \
|
||||||
|
&& docker-php-ext-enable xdebug
|
||||||
|
|
||||||
|
RUN usermod -u 1000 www-data
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
CMD ["php-fpm"]
|
||||||
|
|
||||||
|
EXPOSE 9000
|
14
php-fpm/laravel.ini
Normal file
14
php-fpm/laravel.ini
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
date.timezone=UTC
|
||||||
|
display_errors=Off
|
||||||
|
log_errors=On
|
||||||
|
extension=mongodb.so
|
||||||
|
|
||||||
|
; Maximum amount of memory a script may consume (128MB)
|
||||||
|
; http://php.net/memory-limit
|
||||||
|
memory_limit = 128M
|
||||||
|
; Maximum allowed size for uploaded files.
|
||||||
|
; http://php.net/upload-max-filesize
|
||||||
|
upload_max_filesize = 20M
|
||||||
|
; Sets max size of post data allowed.
|
||||||
|
; http://php.net/post-max-size
|
||||||
|
post_max_size = 20M
|
@ -1,33 +0,0 @@
|
|||||||
# You can change the PHP version from here. After changing the PHP version, check the Memcached section below because it replies on PHP 7.
|
|
||||||
FROM php:7.0-fpm
|
|
||||||
|
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|
||||||
|
|
||||||
ADD ./laravel.ini /usr/local/etc/php/conf.d
|
|
||||||
ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
|
|
||||||
|
|
||||||
RUN apt-get update && apt-get install \
|
|
||||||
libpq-dev -y \
|
|
||||||
curl \
|
|
||||||
libmemcached-dev
|
|
||||||
|
|
||||||
# Install extensions using the helper script provided by the base image
|
|
||||||
RUN docker-php-ext-install \
|
|
||||||
pdo_mysql \
|
|
||||||
pdo_pgsql
|
|
||||||
|
|
||||||
# Install Memcached for php 7
|
|
||||||
RUN curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
|
|
||||||
&& mkdir -p /usr/src/php/ext/memcached \
|
|
||||||
&& tar -C /usr/src/php/ext/memcached -zxvf /tmp/memcached.tar.gz --strip 1 \
|
|
||||||
&& docker-php-ext-configure memcached \
|
|
||||||
&& docker-php-ext-install memcached \
|
|
||||||
&& rm /tmp/memcached.tar.gz
|
|
||||||
|
|
||||||
RUN usermod -u 1000 www-data
|
|
||||||
|
|
||||||
WORKDIR /var/www/laravel
|
|
||||||
|
|
||||||
CMD ["php-fpm"]
|
|
||||||
|
|
||||||
EXPOSE 9000
|
|
@ -1,3 +0,0 @@
|
|||||||
date.timezone = UTC
|
|
||||||
display_errors = Off
|
|
||||||
log_errors = On
|
|
@ -4,6 +4,8 @@ MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
|||||||
|
|
||||||
#COPY redis.conf /usr/local/etc/redis/redis.conf
|
#COPY redis.conf /usr/local/etc/redis/redis.conf
|
||||||
|
|
||||||
CMD [ "redis-server" ]
|
VOLUME /data
|
||||||
|
|
||||||
EXPOSE 6379
|
EXPOSE 6379
|
||||||
|
|
||||||
|
CMD ["redis-server"]
|
||||||
|
7
volumes/application/Dockerfile
Normal file
7
volumes/application/Dockerfile
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
FROM debian:jessie
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
CMD ["true"]
|
97
workspace/Dockerfile
Normal file
97
workspace/Dockerfile
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
FROM phusion/baseimage:latest
|
||||||
|
|
||||||
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
|
RUN DEBIAN_FRONTEND=noninteractive
|
||||||
|
RUN locale-gen en_US.UTF-8
|
||||||
|
|
||||||
|
ENV LANGUAGE=en_US.UTF-8
|
||||||
|
ENV LC_ALL=en_US.UTF-8
|
||||||
|
ENV LC_CTYPE=UTF-8
|
||||||
|
ENV LANG=en_US.UTF-8
|
||||||
|
ENV TERM xterm
|
||||||
|
|
||||||
|
# Install "software-properties-common" (for the "add-apt-repository")
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
software-properties-common
|
||||||
|
|
||||||
|
# Add the "PHP 7" ppa
|
||||||
|
RUN add-apt-repository -y \
|
||||||
|
ppa:ondrej/php
|
||||||
|
|
||||||
|
# Install PHP-CLI 7, some PHP extentions and some useful Tools with APT
|
||||||
|
RUN apt-get update && apt-get install -y --force-yes \
|
||||||
|
php7.0-cli \
|
||||||
|
php7.0-common \
|
||||||
|
php7.0-curl \
|
||||||
|
php7.0-json \
|
||||||
|
php7.0-xml \
|
||||||
|
php7.0-mbstring \
|
||||||
|
php7.0-mcrypt \
|
||||||
|
php7.0-mysql \
|
||||||
|
php7.0-pgsql \
|
||||||
|
php7.0-sqlite \
|
||||||
|
php7.0-sqlite3 \
|
||||||
|
php7.0-zip \
|
||||||
|
php7.0-memcached \
|
||||||
|
php7.0-gd \
|
||||||
|
php7.0-xdebug \
|
||||||
|
php-dev \
|
||||||
|
libcurl4-openssl-dev \
|
||||||
|
libedit-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libxml2-dev \
|
||||||
|
xz-utils \
|
||||||
|
sqlite3 \
|
||||||
|
libsqlite3-dev \
|
||||||
|
git \
|
||||||
|
curl \
|
||||||
|
vim \
|
||||||
|
nano \
|
||||||
|
pkg-config
|
||||||
|
|
||||||
|
# Clean up, to free some space
|
||||||
|
RUN apt-get clean
|
||||||
|
|
||||||
|
# remove load xdebug extension (only load on phpunit command)
|
||||||
|
RUN sed -i 's/^/;/g' /etc/php/7.0/cli/conf.d/20-xdebug.ini
|
||||||
|
|
||||||
|
# Add bin folder of composer to PATH.
|
||||||
|
RUN echo "export PATH=${PATH}:/var/www/laravel/vendor/bin" >> ~/.bashrc
|
||||||
|
|
||||||
|
# Install Composer
|
||||||
|
RUN curl -s http://getcomposer.org/installer | php \
|
||||||
|
&& mv composer.phar /usr/local/bin/composer
|
||||||
|
|
||||||
|
# Load xdebug Zend extension with phpunit command
|
||||||
|
RUN echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/laravel/vendor/bin/phpunit'" >> ~/.bashrc
|
||||||
|
|
||||||
|
# Install mongodb extension
|
||||||
|
RUN pecl install mongodb
|
||||||
|
RUN echo "extension=mongodb.so" >> /etc/php/7.0/cli/php.ini
|
||||||
|
|
||||||
|
# Install nvm (Node Version Manager)
|
||||||
|
RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
|
||||||
|
|
||||||
|
ENV NVM_DIR=/root/.nvm
|
||||||
|
|
||||||
|
# Install stable node
|
||||||
|
RUN . ~/.nvm/nvm.sh \
|
||||||
|
&& nvm install stable \
|
||||||
|
&& nvm use stable \
|
||||||
|
&& nvm alias stable \
|
||||||
|
&& npm install -g gulp bower
|
||||||
|
|
||||||
|
# Source the bash
|
||||||
|
RUN . ~/.bashrc
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
|
|
||||||
|
WORKDIR /var/www/laravel
|
||||||
|
|
||||||
|
# Install optional software
|
||||||
|
ARG INSTALL_PRESTISSIMO=false
|
||||||
|
RUN if [ "$INSTALL_PRESTISSIMO" = true ] ; then \
|
||||||
|
composer global require "hirak/prestissimo:^0.3"; \
|
||||||
|
fi
|
Reference in New Issue
Block a user