Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
W
wcms-docker
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Chris Shantz
wcms-docker
Commits
d94d2e5e
Commit
d94d2e5e
authored
6 years ago
by
Chris Shantz
Browse files
Options
Downloads
Patches
Plain Diff
Updated the build scripts and docker-compose to use a .env file for variables.
parent
99847bc5
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
.env
+48
-0
48 additions, 0 deletions
.env
build-scripts/drupal7/Dockerfile
+39
-31
39 additions, 31 deletions
build-scripts/drupal7/Dockerfile
build-scripts/drupal8/Dockerfile
+29
-23
29 additions, 23 deletions
build-scripts/drupal8/Dockerfile
docker-compose.yml
+18
-7
18 additions, 7 deletions
docker-compose.yml
with
134 additions
and
61 deletions
.env
0 → 100644
+
48
−
0
View file @
d94d2e5e
## WCMS Docker Environment settings ##
## If changes are required to any setting they should be added/done here ##
### Project Settings ###
#################################
PROJECT_NAME=wcms-docker
PROJECT_BASE_URL=wcms.localhost
### Database Settings ###
#################################
DB_NAME=d8_fdsu1
DB_USER=drupal
DB_PASSWORD=vagrant
DB_ROOT_PASSWORD=root
DB_HOST=mariadb
DB_DRIVER=mysql
DB_ADDITIONAL=d7_fdsu1 d7_fdsu2 d7_fdsu3 d7_fdsu4 d8_fdsu2 d8_fdsu3 d8_fdsu4
### PHP Setttings ###
##################################
PHP_VERSION=5.6
#PHP_VERSION=7.1
#PHP_VERSION=7.2
#PHP_VERSION=7.3
#PHP_VERSION8=7.1
PHP_VERSION8=7.2
#PHP_VERSION8=7.3
### DRUPAL settings ###
##################################
DRUPAL7_VERSION=7.63
DRUPAL8_VERSION=8.6.7
===================================================================================
\ No newline at end of file
This diff is collapsed.
Click to expand it.
build-scripts/drupal7/Dockerfile
+
39
−
31
View file @
d94d2e5e
...
...
@@ -5,6 +5,13 @@
# Set the base image to Ubuntu
FROM
ubuntu:xenial
# Pass the argument variables from the docker-compose file to the Dockerfile and echo them out
ARG
PHP_VERSION
ARG
DRUPAL7_VERSION
RUN
echo
"PHP version:
$PHPVERSION
"
RUN
echo
"Drupal 7 version:
$DRUPAL7_VERSION
"
# Allows installing of packages without prompting the user to answer any questions
ENV
DEBIAN_FRONTEND noninteractive
...
...
@@ -35,21 +42,22 @@ RUN apt-get install -y \
vim
\
git
\
apache2
\
php7.1
\
php7.1-apc
\
php7.1-fpm
\
php7.1-xml
\
php7.1-simplexml
\
php7.1-mbstring
\
php7.1-cli
\
php7.1-mysql
\
php7.1-gd
\
php7.1-curl
\
php7.1-ldap
\
php7.1-mcrypt
\
php7.1-zip
\
php
${
PHP_VERSION
}
\
php
${
PHP_VERSION
}
-apc
\
php
${
PHP_VERSION
}
-fpm
\
php
${
PHP_VERSION
}
-xml
\
php
${
PHP_VERSION
}
-simplexml
\
php
${
PHP_VERSION
}
-mbstring
\
php
${
PHP_VERSION
}
-cli
\
php
${
PHP_VERSION
}
-mysql
\
php
${
PHP_VERSION
}
-gd
\
php
${
PHP_VERSION
}
-gd
\
php
${
PHP_VERSION
}
-curl
\
php
${
PHP_VERSION
}
-ldap
\
php
${
PHP_VERSION
}
-mcrypt
\
php
${
PHP_VERSION
}
-zip
\
php-pear
\
libapache2-mod-php
7.1
\
libapache2-mod-php
${
PHP_VERSION
}
\
optipng
\
pdftk
\
jpegoptim
\
...
...
@@ -107,19 +115,19 @@ RUN useradd -d /home/vagrant -ms /bin/bash -g root -G sudo -p vagrant vagrant
# Replace the default site configuration with our own.
COPY
000-default.conf /etc/apache2/sites-available/000-default.conf
RUN
a2enmod proxy_fcgi setenvif
RUN
a2enconf php
7.1
-fpm
RUN
service php
7.1
-fpm restart
RUN
a2enconf php
${
PHP_VERSION
}
-fpm
RUN
service php
${
PHP_VERSION
}
-fpm
restart
## Make sure we are running php5.6
RUN
update-alternatives
--set
php /usr/bin/php
7.1
RUN
a2enmod php
7.1
RUN
update-alternatives
--set
php /usr/bin/php
${
PHP_VERSION
}
RUN
a2enmod php
${
PHP_VERSION
}
RUN
service apache2 restart
## Check version of PHP
RUN
php
-v
## Install Drupal.
RUN
drush dl
-v
-d
drupal-
7.63
--destination
=
"/var/www"
--drupal-project-rename
=
"drupal7"
RUN
drush dl
-v
-d
drupal-
${
DRUPAL7_VERSION
}
--destination
=
"/var/www"
--drupal-project-rename
=
"drupal7"
RUN
chown
-R
www-data:www-data /var/www/
...
...
@@ -188,18 +196,18 @@ COPY docker-entrypoint-d7.sh /usr/local/bin/
RUN
chmod
+x /usr/local/bin/docker-entrypoint-d7.sh
## Add Drupal specific changes for PHP to the php.ini files.
RUN
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
7.1
/fpm/php.ini
&&
\
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
7.1
/cli/php.ini
&&
\
sed
-i
"s/max_execution_time =.*/max_execution_time = 240/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/max_execution_time =.*/max_execution_time = 240/"
/etc/php/
7.1
/cli/php.ini
&&
\
sed
-i
"s/max_input_time = .*/max_input_time = 240/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/max_input_time = .*/max_input_time = 240/"
/etc/php/
7.1
/cli/php.ini
&&
\
sed
-i
"s/memory_limit = .*/memory_limit = 768M/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/memory_limit = .*/memory_limit = 768M/"
/etc/php/
7.1
/cli/php.ini
&&
\
sed
-i
"s/; max_input_vars = .*/max_input_vars = 10000/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/;date.timezone = */date.timezone = America
\/
Toronto/"
/etc/php/
7.1
/apache2/php.ini
&&
\
sed
-i
"s/;date.timezone = */date.timezone = America
\/
Toronto/"
/etc/php/
7.1
/cli/php.ini
RUN
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
${
PHP_VERSION
}
/fpm/php.ini
&&
\
sed
-i
"s/display_errors = .*/display_errors = On/"
/etc/php/
${
PHP_VERSION
}
/cli/php.ini
&&
\
sed
-i
"s/max_execution_time =.*/max_execution_time = 240/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/max_execution_time =.*/max_execution_time = 240/"
/etc/php/
${
PHP_VERSION
}
/cli/php.ini
&&
\
sed
-i
"s/max_input_time = .*/max_input_time = 240/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/max_input_time = .*/max_input_time = 240/"
/etc/php/
${
PHP_VERSION
}
/cli/php.ini
&&
\
sed
-i
"s/memory_limit = .*/memory_limit = 768M/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/memory_limit = .*/memory_limit = 768M/"
/etc/php/
${
PHP_VERSION
}
/cli/php.ini
&&
\
sed
-i
"s/; max_input_vars = .*/max_input_vars = 10000/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/;date.timezone = */date.timezone = America
\/
Toronto/"
/etc/php/
${
PHP_VERSION
}
/apache2/php.ini
&&
\
sed
-i
"s/;date.timezone = */date.timezone = America
\/
Toronto/"
/etc/php/
${
PHP_VERSION
}
/cli/php.ini
# Expose the default Apache port.
EXPOSE
80
...
...
This diff is collapsed.
Click to expand it.
build-scripts/drupal8/Dockerfile
+
29
−
23
View file @
d94d2e5e
############################################################
# Dockerfile to build WCMS container images
# Based on Ubuntu
############################################################
# Set the base image to Ubuntu
FROM
ubuntu:xenial
#
###############################################################################
# #
# THIS CONTAINER IS FOR EDUCATIONAL USE ONLY! #
# #
# Never use this container for running production workloads! #
# #
################################################################################
#
Pass the argument variables from the docker-compose file to the Dockerfile and echo them out
ARG
PHP_VERSION8
ARG
DRUPAL8_VERSION
RUN
echo
"PHP version:
${
PHPVERSION8
}
"
RUN
echo
"Drupal 8 version:
${
DRUPAL8_VERSION
}
"
# Allows installing of packages without prompting the user to answer any questions
ENV
DEBIAN_FRONTEND noninteractive
RUN
apt-get update
&&
\
apt-get
install
--assume-yes
\
software-properties-common
\
...
...
@@ -36,21 +42,21 @@ RUN apt-get update && \
openssh-server
\
wget
\
sudo
\
php
7.2
\
libapache2-mod-php
7.2
\
php
7.2
-mysql
\
php
7.2
-cli
\
php
7.2
-common
\
php
7.2
-gd
\
php
7.2
-mbstring
\
php
7.2
-xml
\
php
7.2
-opcache
\
php
7.2
-sqlite3
\
php
7.2
-mysql
\
php
7.2
-curl
\
php
7.2
-soap
\
php
7.2
-phar
\
php
7.2
-cgi
\
php
${
PHP_VERSION8
}
\
libapache2-mod-php
${
PHP_VERSION8
}
\
php
${
PHP_VERSION8
}
-mysql
\
php
${
PHP_VERSION8
}
-cli
\
php
${
PHP_VERSION8
}
-common
\
php
${
PHP_VERSION8
}
-gd
\
php
${
PHP_VERSION8
}
-mbstring
\
php
${
PHP_VERSION8
}
-xml
\
php
${
PHP_VERSION8
}
-opcache
\
php
${
PHP_VERSION8
}
-sqlite3
\
php
${
PHP_VERSION8
}
-mysql
\
php
${
PHP_VERSION8
}
-curl
\
php
${
PHP_VERSION8
}
-soap
\
php
${
PHP_VERSION8
}
-phar
\
php
${
PHP_VERSION8
}
-cgi
\
php-uploadprogress
\
php-pear
\
optipng
\
...
...
@@ -128,7 +134,7 @@ ENV APACHE_PID_FILE /var/run/apache2.pid
# Clone Drupal
RUN
drush dl
-v
-d
drupal-
8.6.7
--destination
=
"/var/www"
--drupal-project-rename
=
"drupal8"
RUN
drush dl
-v
-d
drupal-
${
DRUPAL8_VERSION
}
--destination
=
"/var/www"
--drupal-project-rename
=
"drupal8"
RUN
echo
"Cloned Drupal 8...."
# Clone our WCMS profile
...
...
This diff is collapsed.
Click to expand it.
docker-compose.yml
+
18
−
7
View file @
d94d2e5e
...
...
@@ -3,22 +3,32 @@ services:
drupal7
:
container_name
:
wcms-drupal7
build
:
./build-scripts/drupal7
build
:
context
:
./build-scripts/drupal7
args
:
PHP_VERSION
:
${PHP_VERSION}
DRUPAL7_VERSION
:
${DRUPAL7_VERSION}
ports
:
-
"
8080:80"
-
"
4443:443"
stdin_open
:
true
tty
:
true
drupal8
:
container_name
:
wcms-drupal8
build
:
./build-scripts/drupal8
build
:
context
:
./build-scripts/drupal8
args
:
PHP_VERSION8
:
${PHP_VERSION8}
DRUPAL8_VERSION
:
${DRUPAL8_VERSION}
ports
:
-
"
8081:80"
-
"
4444:443"
stdin_open
:
true
tty
:
true
...
...
@@ -30,11 +40,11 @@ services:
volumes
:
-
./db-backups:/var/mysql/backups:delegated
environment
:
MYSQL_ROOT_PASSWORD
:
root
MYSQL_DATABASE
:
d8_fdsu1
MYSQL_USER
:
drupal
MYSQL_PASSWORD
:
vagrant
ADDITIONAL_DATABASES
:
d7_fdsu1 d7_fdsu2 d7_fdsu3 d7_fdsu4 d8_fdsu2 d8_fdsu3 d8_fdsu4
MYSQL_ROOT_PASSWORD
:
$DB_ROOT_PASSWORD
MYSQL_DATABASE
:
$DB_NAME
MYSQL_USER
:
$DB_USER
MYSQL_PASSWORD
:
$DB_PASSWORD
ADDITIONAL_DATABASES
:
${DB_ADDITIONAL}
ports
:
-
"
3306:3306"
...
...
@@ -60,6 +70,7 @@ services:
-
/var/run/docker.sock:/var/run/docker.sock
-
portainer_data:/data
volumes
:
portainer_data
:
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment