From f74e61612aa7b6b36dd2363e765cb56bf5c29c9f Mon Sep 17 00:00:00 2001 From: solidnerd Date: Fri, 14 Apr 2017 13:40:21 +0200 Subject: [PATCH 1/9] Upgrade Bookstack to 0.15.0 --- Dockerfile | 4 ++-- README.md | 6 +++--- VERSION | 2 +- docker-compose.yml | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index 810150c7..e0c801af 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM php:7.0-apache ENV BOOKSTACK=BookStack \ - BOOKSTACK_VERSION=0.14.3 + BOOKSTACK_VERSION=0.15.0 RUN apt-get update && apt-get install -y git zlib1g-dev libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12-dev wget libldap2-dev libtidy-dev \ && docker-php-ext-install pdo pdo_mysql mbstring zip tidy \ @@ -37,4 +37,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.url="https://github.com/solidnerd/docker-bookstack/" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.vcs-url="https://github.com/solidnerd/docker-bookstack.git" \ - org.label-schema.vcs-type="Git" \ No newline at end of file + org.label-schema.vcs-type="Git" diff --git a/README.md b/README.md index acad381b..cd7eb9a9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![](https://images.microbadger.com/badges/image/solidnerd/bookstack.svg)](https://microbadger.com/images/solidnerd/bookstack "Get your own image badge on microbadger.com") [![](https://images.microbadger.com/badges/commit/solidnerd/bookstack.svg)](https://microbadger.com/images/solidnerd/bookstack "Get your own commit badge on microbadger.com") [![](https://images.microbadger.com/badges/version/solidnerd/bookstack.svg)](https://microbadger.com/images/solidnerd/bookstack "Get your own version badge on microbadger.com") [![](https://images.microbadger.com/badges/license/solidnerd/bookstack.svg)](https://microbadger.com/images/solidnerd/bookstack "Get your own license badge on microbadger.com") -## Current Version: [0.14.3](https://github.com/SolidNerd/docker-bookstack/blob/master/Dockerfile) +## Current Version: [0.15.0](https://github.com/SolidNerd/docker-bookstack/blob/master/Dockerfile) ### Changes In 0.12.2 we removed `DB_PORT` . You can now specify the port via `DB_HOST` like `DB_HOST=mysql:3306` @@ -31,7 +31,7 @@ docker run -d --name bookstack-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=secret ``` 2. BookStack Container: ```bash -docker run --name my-bookstack -d --link bookstack-mysql:mysql -p 8080:80 solidnerd/bookstack:0.14.3 +docker run --name my-bookstack -d --link bookstack-mysql:mysql -p 8080:80 solidnerd/bookstack:0.15.0 ``` ### #Docker 1.9+ @@ -58,7 +58,7 @@ docker run -d --net bookstack_nw \ -e DB_USERNAME=bookstack \ -e DB_PASSWORD=secret \ -p 8080:80 \ - solidnerd/bookstack:0.14.3 + solidnerd/bookstack:0.15.0 ``` After the steps you can visit [http://localhost:8080](http://localhost:8080) . You can login with username 'admin@admin.com' and password 'password'. diff --git a/VERSION b/VERSION index 94ec2401..a5510516 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.14.3 \ No newline at end of file +0.15.0 diff --git a/docker-compose.yml b/docker-compose.yml index 011de7d2..9615d283 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,7 +12,7 @@ services: - mysql-data:/var/lib/mysql bookstack: - image: solidnerd/bookstack:0.14.3 + image: solidnerd/bookstack:0.15.0 depends_on: - mysql environment: @@ -29,4 +29,4 @@ services: volumes: mysql-data: uploads: - storage-uploads: \ No newline at end of file + storage-uploads: From d97c8a42324894ea67ed4cf7f5a526c207757503 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Fri, 14 Apr 2017 13:46:06 +0200 Subject: [PATCH 2/9] Don't remove /tmp/* --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e0c801af..0d03d6b2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y git zlib1g-dev libfreetype6-dev libjpeg && chown -R www-data:www-data /var/www/BookStack \ && apt-get -y autoremove \ && apt-get clean \ - && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /etc/apache2/sites-enabled/000-*.conf + && rm -rf /var/lib/apt/lists/* /var/tmp/* /etc/apache2/sites-enabled/000-*.conf COPY bookstack.conf /etc/apache2/sites-enabled/bookstack.conf RUN a2enmod rewrite From ef7264bc82ca39737b1d6be2c16206ad0c114bc8 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 00:54:23 +0200 Subject: [PATCH 3/9] Add link for lavarell logs to stderr Signed-off-by: solidnerd --- docker-entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 7c4a2c29..bb0a8d74 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -79,6 +79,7 @@ if [ ! -f '/var/www/BookStack/.env' ]; then MAIL_ENCRYPTION=${MAIL_ENCRYPTION:-null} # URL used for social login redirects, NO TRAILING SLASH EOF +sed -ie "s/single/errorlog/g" config/app.php else echo >&2 'error: missing DB_HOST environment variable' exit 1 From 2ca13df2a6fa1ef5dfdb6641f65b0fb001331df8 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 00:55:45 +0200 Subject: [PATCH 4/9] Move everything to /var/www/bookstack Signed-off-by: solidnerd --- Dockerfile | 11 +++++++---- bookstack.conf | 4 ++-- docker-entrypoint.sh | 5 ++--- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Dockerfile b/Dockerfile index 0d03d6b2..eaffc287 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,8 @@ FROM php:7.0-apache ENV BOOKSTACK=BookStack \ - BOOKSTACK_VERSION=0.15.0 + BOOKSTACK_VERSION=0.15.0 \ + BOOKSTACK_HOME="/var/www/bookstack" RUN apt-get update && apt-get install -y git zlib1g-dev libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12-dev wget libldap2-dev libtidy-dev \ && docker-php-ext-install pdo pdo_mysql mbstring zip tidy \ @@ -12,9 +13,9 @@ RUN apt-get update && apt-get install -y git zlib1g-dev libfreetype6-dev libjpeg && cd /var/www && curl -sS https://getcomposer.org/installer | php \ && mv /var/www/composer.phar /usr/local/bin/composer \ && wget https://github.com/ssddanbrown/BookStack/archive/v${BOOKSTACK_VERSION}.tar.gz -O ${BOOKSTACK}.tar.gz \ - && tar -xf ${BOOKSTACK}.tar.gz && mv BookStack-${BOOKSTACK_VERSION} ${BOOKSTACK} && rm ${BOOKSTACK}.tar.gz \ - && cd /var/www/BookStack && composer install \ - && chown -R www-data:www-data /var/www/BookStack \ + && tar -xf ${BOOKSTACK}.tar.gz && mv BookStack-${BOOKSTACK_VERSION} ${BOOKSTACK_HOME} && rm ${BOOKSTACK}.tar.gz \ + && cd $BOOKSTACK_HOME && composer install \ + && chown -R www-data:www-data $BOOKSTACK_HOME \ && apt-get -y autoremove \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /var/tmp/* /etc/apache2/sites-enabled/000-*.conf @@ -24,6 +25,8 @@ RUN a2enmod rewrite COPY docker-entrypoint.sh / +WORKDIR $BOOKSTACK_HOME + EXPOSE 80 ENTRYPOINT ["/docker-entrypoint.sh"] diff --git a/bookstack.conf b/bookstack.conf index f7245b9c..a079aff8 100644 --- a/bookstack.conf +++ b/bookstack.conf @@ -1,8 +1,8 @@ ServerName bookstack.dev - DocumentRoot "/var/www/BookStack/public/" + DocumentRoot "/var/www/bookstack/public/" - + Options FollowSymLinks MultiViews AllowOverride All Require all granted diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index bb0a8d74..50fe0fae 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -103,12 +103,11 @@ else echoerr wait-for-db: timeout out after 15 seconds waiting for ${DB_HOST_NAME}:${DB_PORT} fi -cd /var/www/BookStack/ && php artisan key:generate && php artisan migrate --force echo "Setting folder permissions for uploads" -chown -R www-data:www-data /var/www/BookStack/public/uploads && chmod -R 775 /var/www/BookStack/public/uploads -chown -R www-data:www-data /var/www/BookStack/storage/uploads && chmod -R 775 /var/www/BookStack/storage/uploads +chown -R www-data:www-data public/uploads && chmod -R 775 public/uploads +chown -R www-data:www-data storage/uploads && chmod -R 775 storage/uploads echo "Clear Cache..." From f934da29c807692f5de9b59637896c3f76e69ada Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 00:56:57 +0200 Subject: [PATCH 5/9] Add composer install to docker-entrypoint.sh Signed-off-by: solidnerd --- docker-entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 50fe0fae..ed3e792d 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -103,6 +103,7 @@ else echoerr wait-for-db: timeout out after 15 seconds waiting for ${DB_HOST_NAME}:${DB_PORT} fi +composer install echo "Setting folder permissions for uploads" From d5f3efadd7300a19f05ab93eddfaf889b92260e1 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 00:57:30 +0200 Subject: [PATCH 6/9] Refactor lines for artisan Signed-off-by: solidnerd --- docker-entrypoint.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index ed3e792d..63381203 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -105,14 +105,17 @@ fi composer install +php artisan key:generate + +php artisan migrate --force + echo "Setting folder permissions for uploads" chown -R www-data:www-data public/uploads && chmod -R 775 public/uploads chown -R www-data:www-data storage/uploads && chmod -R 775 storage/uploads -echo "Clear Cache..." - php artisan cache:clear + php artisan view:clear exec apache2-foreground From af4353336fb0d1b2bc8a89cbf7f15f50d7e71f68 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 00:58:04 +0200 Subject: [PATCH 7/9] Add VOLUMES Argument for Dockerfile This will be easier to handle volumes by the docker engine. Signed-off-by: solidnerd --- Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Dockerfile b/Dockerfile index eaffc287..cb0c7404 100644 --- a/Dockerfile +++ b/Dockerfile @@ -29,6 +29,8 @@ WORKDIR $BOOKSTACK_HOME EXPOSE 80 +VOLUME ["$BOOKSTACK_HOME/public/uploads","$BOOKSTACK_HOME/public/storage"] + ENTRYPOINT ["/docker-entrypoint.sh"] ARG BUILD_DATE From baff816998b0472cca8a6743c21434e55f5706cf Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 01:00:26 +0200 Subject: [PATCH 8/9] Add vendor label Signed-off-by: solidnerd --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index cb0c7404..f517da6c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -39,6 +39,7 @@ LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.docker.dockerfile="/Dockerfile" \ org.label-schema.license="MIT" \ org.label-schema.name="bookstack" \ + org.label-schema.vendor="solidnerd" \ org.label-schema.url="https://github.com/solidnerd/docker-bookstack/" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.vcs-url="https://github.com/solidnerd/docker-bookstack.git" \ From aa449992fffffba6facc8cebcee26416ca4d41a3 Mon Sep 17 00:00:00 2001 From: solidnerd Date: Sun, 16 Apr 2017 01:01:42 +0200 Subject: [PATCH 9/9] Add hook for pushing latest after a sucessful build This will help to update the same version when a tag is build Signed-off-by: solidnerd --- hooks/post_push | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 hooks/post_push diff --git a/hooks/post_push b/hooks/post_push new file mode 100644 index 00000000..6ac70c0a --- /dev/null +++ b/hooks/post_push @@ -0,0 +1,5 @@ +#!/bin/bash +set -e + +docker tag $IMAGE_NAME $DOCKER_REPO:latest +docker push $DOCKER_REPO:latest \ No newline at end of file