This repository has been archived by the owner on Aug 15, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
82 lines (70 loc) · 2.23 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
FROM ubuntu:14.04
MAINTAINER Paolo Mainardi <[email protected]>
ENV REFRESHED_AT 2014-11-24-2
ENV DEBIAN_FRONTEND noninteractive
# Map www-data user
ENV APACHE_HOME /home/www-data
# Set timezone and locale.
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# Use nodejs from ppa:chris-lea repository.
RUN apt-get update && apt-get -y install python-software-properties software-properties-common && \
add-apt-repository ppa:chris-lea/node.js -y
# USE php5.6 from ppa:ondrej repository.
#RUN add-apt-repository ppa:ondrej/php5-5.6 -y
RUN apt-get update && \
apt-get -y install \
bindfs \
php5-cli \
php5-curl \
php5-gd \
php5-mysql \
php5-mcrypt \
curl \
wget \
zip \
git \
mysql-client \
build-essential \
libsqlite3-dev \
ruby \
bundler \
nodejs \
ruby-dev && \
rm -rf /var/lib/apt/lists/* && \
npm install -g bower && \
curl -sS https://getcomposer.org/installer | php && \
mv composer.phar /usr/local/bin/composer && \
curl -o /usr/local/bin/gosu -SL 'https://github.com/tianon/gosu/releases/download/1.0/gosu' && \
chmod +x /usr/local/bin/gosu
# Init www-data home folder, install PHP composer dependencies and fix drush console table.
ADD http://download.pear.php.net/package/Console_Table-1.1.3.tgz /tmp/
COPY conf/composer.json $APACHE_HOME/composer.json
RUN mkdir -p $APACHE_HOME/.git && \
mkdir -p $APACHE_HOME/.ssh && \
usermod -d $APACHE_HOME www-data && \
cd $APACHE_HOME && \
composer install && \
chown -R www-data:www-data $APACHE_HOME && \
tar xzf /tmp/Console_Table-1.1.3.tgz -C $APACHE_HOME/vendor/drush/drush/lib && \
rm /tmp/Console_Table-1.1.3.tgz
# Install ruby binaries.
WORKDIR /tmp
COPY conf/.gemrc /root/.gemrc
COPY conf/Gemfile /tmp/Gemfile
RUN bundle install
# Add PHP custom configurations.
COPY conf/php-conf.d/opcache.ini /etc/php5/cli/conf.d/php.ini
COPY conf/php-conf.d/docker.ini /etc/php5/cli/conf.d/docker.ini
COPY run.sh /run.sh
RUN chmod +x /run.sh
# Create folders and expose data volume.
RUN mkdir -p /data/var/www && \
chown -R www-data:www-data /data/var/www
VOLUME /data
WORKDIR /data/var/www
# Opinionated start.
ENTRYPOINT ["/run.sh"]
CMD ["bash"]