Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
laradock
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kerwin
laradock
Commits
2d1c1586
Commit
2d1c1586
authored
Jul 27, 2016
by
Mahmoud Zalt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use laradock workspace base image
to speed up the build time
parent
5bb3d3b6
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
75 deletions
+40
-75
Dockerfile
workspace/Dockerfile
+40
-75
No files found.
workspace/Dockerfile
View file @
2d1c1586
...
...
@@ -4,82 +4,49 @@
#--------------------------------------------------------------------------
#
FROM
phusion/baseimage:latest
FROM
laradock/workspace:1.0.0
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
# Add the "PHP 7" ppa
RUN
apt-get
install
-y
software-properties-common
&&
\
add-apt-repository
-y
ppa:ondrej/php
#
#--------------------------------------------------------------------------
# Software's Installation
#
Mandatory
Software's Installation
#--------------------------------------------------------------------------
#
# Mandatory Software's such as ("php7.0-cli", "git", "vim", ....) are
# installed on the base image 'laradock/workspace' image. If you want
# to add more Software's or remove existing one, you need to edit the
# base image (https://github.com/LaraDock/workspace).
#
# Install "PHP Extentions", "libraries", "Software's"
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
\
pkg-config
\
php-dev
\
libcurl4-openssl-dev
\
libedit-dev
\
libssl-dev
\
libxml2-dev
\
xz-utils
\
libsqlite3-dev
\
sqlite3
\
git
\
curl
\
vim
\
nano
\
&&
apt-get clean
#
#--------------------------------------------------------------------------
# Optional Software's Installation
#--------------------------------------------------------------------------
#
# Optional Software's will only be installed if you set them to `true`
# in the `docker-compose.yml` before the build.
#
# - INSTALL_XDEBUG= false
# - INSTALL_MONGO= false
# - COMPOSER_GLOBAL_INSTALL= false
# - INSTALL_NODE= false
#
#####################################
#
Composer
:
#
xDebug
:
#####################################
# Install composer and add its bin to the PATH.
RUN
curl
-s
http://getcomposer.org/installer | php
&&
\
echo
"export PATH=
${
PATH
}
:/var/www/laravel/vendor/bin"
>>
~/.bashrc
&&
\
mv
composer.phar /usr/local/bin/composer
# Add the composer.json
ADD
./composer.json /root/.composer/composer.json
# Check if global install need to be runned
ARG
COMPOSER_GLOBAL_INSTALL=true
ENV
COMPOSER_GLOBAL_INSTALL ${COMPOSER_GLOBAL_INSTALL}
RUN if
[
${
COMPOSER_GLOBAL_INSTALL
}
=
true
]
;
then
\
# run the install
composer global install \
# Check if xDebug needs to be installed
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 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 \
;fi
#####################################
# MongoDB:
#####################################
...
...
@@ -94,17 +61,18 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \
;fi
#####################################
#
xDebug
:
#
Composer
:
#####################################
# Check if xDebug needs to be installed
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 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 \
# Add the composer.json
ADD
./composer.json /root/.composer/composer.json
# Check if global install need to be runned
ARG
COMPOSER_GLOBAL_INSTALL=true
ENV
COMPOSER_GLOBAL_INSTALL ${COMPOSER_GLOBAL_INSTALL}
RUN if
[
${
COMPOSER_GLOBAL_INSTALL
}
=
true
]
;
then
\
# run the install
composer global install \
;fi
#####################################
...
...
@@ -137,12 +105,9 @@ ENV if [ ${INSTALL_NODE} = true ]; then \
#--------------------------------------------------------------------------
#
# Source the bash
RUN
.
~/.bashrc
# Clean up
RUN
apt-get clean
&&
\
rm
-rf
/var/lib/apt/lists/
*
/tmp/
*
/var/tmp/
*
# Set default work directory
WORKDIR
/var/www/laravel
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment