Last active
August 29, 2015 14:05
-
-
Save tpett/f2b73046863aa27a0798 to your computer and use it in GitHub Desktop.
Docker Wordpress Setup
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
if [ -z "$1" ]; then | |
echo "USAGE: init-wordpress APP_NAME" | |
echo " APP_NAME is the base name for the new Wordpress Docker containers" | |
exit 1 | |
fi | |
APP_NAME=$1 | |
MYSQL_CONTAINER=mysql | |
WORDPRESS_CONTAINER=wordpress | |
if [ -z "$MYSQL_ROOT_PASSWORD" ]; then | |
MYSQL_ROOT_PASSWORD=`< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c45` | |
fi | |
echo "Setting up data-only containers..." | |
docker run --name $APP_NAME-wordpress-mysql-data --entrypoint="echo" $MYSQL_CONTAINER "Data-only container for $APP_NAME" | |
docker run --name $APP_NAME-wordpress-data --entrypoint="echo" $WORDPRESS_CONTAINER "Data-only container for $APP_NAME" | |
echo "Starting MySQL container..." | |
docker run \ | |
--name $APP_NAME-wordpress-mysql \ | |
--volumes-from $APP_NAME-wordpress-mysql-data \ | |
-e MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD \ | |
-d $MYSQL_CONTAINER \ | |
mysqld \ | |
--datadir=/var/lib/mysql \ | |
--user=mysql \ | |
--performance-schema=off # to avoid massive memory usage (50MB vs 500MB; silly MySQL) | |
echo "Starting Wordpress container..." | |
docker run \ | |
--volumes-from $APP_NAME-wordpress-data \ | |
--name $APP_NAME-wordpress \ | |
--link $APP_NAME-wordpress-mysql:mysql \ | |
-P -d $WORDPRESS_CONTAINER |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Unit] | |
Description=Wordpress MySQL (%i) | |
Author=Watermark Community Church | |
After=docker.service | |
[Service] | |
Restart=always | |
ExecStart=/usr/bin/docker start -a %i-wordpress-mysql | |
ExecStop=/usr/bin/docker stop %i-wordpress-mysql | |
[Install] | |
WantedBy=multi-user.target |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Unit] | |
Description=Wordpress (%i) | |
Author=Watermark Community Church | |
After=docker.service | |
After=%i-wordpress-mysql.service | |
[Service] | |
Restart=always | |
ExecStart=/usr/bin/docker start -a %i-wordpress | |
ExecStop=/usr/bin/docker stop %i-wordpress | |
[Install] | |
WantedBy=multi-user.target |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment