diff --git a/ghost/README.md b/ghost/README.md index 3fcdbee..d8a479f 100644 --- a/ghost/README.md +++ b/ghost/README.md @@ -12,25 +12,25 @@ ghost: - "127.0.0.1:2368:2368" volumes: - ./data:/var/lib/ghost/content - - ./data/config.json:/var/lib/ghost/config.production.json - restart: always + environment: + - url=https://blog.easypi.duckdns.org + - database__client=sqlite3 + - database__connection__filename=/var/lib/ghost/content/data/ghost.db + restart: unless-stopped ``` ## Up and Running ```bash -$ mkdir data -$ cd data -$ wget https://github.com/vimagick/dockerfiles/raw/master/ghost/data/config.json -$ sed -i 's@http://localhost:2368@https://blog.easypi.pro@' config.js $ docker-compose up -d +$ curl https://blog.easypi.duckdns.org/ghost/ ``` ## Setup SSL > Read [this][2] to setup SSL. -``` +```nginx server { listen 80 default; server_name _; @@ -41,11 +41,11 @@ server { server { listen 443 ssl; - server_name easypi.pro blog.easypi.pro; - ssl_certificate ssl/easypi.pro.crt; - ssl_certificate_key ssl/easypi.pro.key; + server_name easypi.duckdns.org blog.easypi.duckdns.org; + ssl_certificate ssl/easypi.duckdns.org/fullchain.pem; + ssl_certificate_key ssl/easypi.duckdns.org/privkey.pem; location / { - if ($host = 'easypi.pro') { + if ($host = 'easypi.duckdns.org') { return 301 $scheme://blog.$host$request_uri; } proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -71,4 +71,4 @@ files without editing them. [1]: https://ghost.org/ [2]: http://support.ghost.org/setup-ssl-self-hosted-ghost/ -[3]: https://blog.easypi.pro/ghost/settings/code-injection/ +[3]: https://blog.easypi.duckdns.org/ghost/settings/code-injection/ diff --git a/ghost/arm/Dockerfile b/ghost/arm/Dockerfile deleted file mode 100644 index c23a3d4..0000000 --- a/ghost/arm/Dockerfile +++ /dev/null @@ -1,38 +0,0 @@ -# -# Dockerfile for ghost-arm -# - -FROM easypi/alpine-arm -MAINTAINER EasyPi Software Foundation - -ENV GHOST_VERSION 2.15.0 -ENV GHOST_INSTALL /var/lib/ghost -ENV GHOST_CONTENT /var/lib/ghost/content -ENV GHOST_CLI_VERSION 1.9.9 -ENV NPM_CONFIG_LOGLEVEL warn -ENV NODE_ENV production - -RUN set -xe \ - && addgroup -g 1000 node \ - && adduser -u 1000 -G node -s /bin/sh -D node \ - && apk add --no-cache bash build-base nodejs nodejs-npm python su-exec \ - && npm install -g --unsafe-perm ghost-cli@$GHOST_CLI_VERSION knex-migrator@latest \ - && mkdir -p $GHOST_INSTALL \ - && chown node:node $GHOST_INSTALL \ - && su-exec node ghost install $GHOST_VERSION --db sqlite3 --no-prompt --no-stack --no-setup --dir $GHOST_INSTALL \ - && cd $GHOST_INSTALL \ - && su-exec node ghost config --ip 0.0.0.0 --port 2368 --no-prompt --db sqlite3 --url http://localhost:2368 --dbpath $GHOST_CONTENT/data/ghost.db \ - && su-exec node ghost config paths.contentPath $GHOST_CONTENT \ - && mv $GHOST_CONTENT $GHOST_INSTALL/content.orig \ - && mkdir -p $GHOST_CONTENT \ - && chown node:node $GHOST_CONTENT \ - && apk del build-base python - -WORKDIR $GHOST_INSTALL -VOLUME $GHOST_CONTENT - -COPY docker-entrypoint.sh /usr/local/bin -ENTRYPOINT ["docker-entrypoint.sh"] - -EXPOSE 2368 -CMD ["node", "current/index.js"] diff --git a/ghost/arm/docker-compose.yml b/ghost/arm/docker-compose.yml index 6957362..b4dd272 100644 --- a/ghost/arm/docker-compose.yml +++ b/ghost/arm/docker-compose.yml @@ -1,7 +1,11 @@ ghost: - image: easypi/ghost-arm + image: arm32v7/ghost:alpine ports: - "127.0.0.1:2368:2368" volumes: - ./data:/var/lib/ghost/content - restart: always + environment: + - url=https://blog.easypi.duckdns.org + - database__client=sqlite3 + - database__connection__filename=/var/lib/ghost/content/data/ghost.db + restart: unless-stopped diff --git a/ghost/arm/docker-entrypoint.sh b/ghost/arm/docker-entrypoint.sh deleted file mode 100755 index 21eee25..0000000 --- a/ghost/arm/docker-entrypoint.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash -set -e - -# allow the container to be started with `--user` -if [[ "$*" == node*current/index.js* ]] && [ "$(id -u)" = '0' ]; then - chown -R node "$GHOST_CONTENT" - exec su-exec node "$BASH_SOURCE" "$@" -fi - -if [[ "$*" == node*current/index.js* ]]; then - baseDir="$GHOST_INSTALL/content.orig" - for src in "$baseDir"/*/ "$baseDir"/themes/*; do - src="${src%/}" - target="$GHOST_CONTENT/${src#$baseDir/}" - mkdir -p "$(dirname "$target")" - if [ ! -e "$target" ]; then - tar -cC "$(dirname "$src")" "$(basename "$src")" | tar -xC "$(dirname "$target")" - fi - done - - knex-migrator-migrate --init --mgpath "$GHOST_INSTALL/current" -fi - -exec "$@" diff --git a/ghost/data/config.json b/ghost/data/config.json deleted file mode 100644 index c030117..0000000 --- a/ghost/data/config.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "url": "http://localhost:2368/", - "server": { - "port": 2368, - "host": "0.0.0.0" - }, - "database": { - "client": "sqlite3", - "connection": { - "filename": "/var/lib/ghost/content/data/ghost.db" - } - }, - "mail": { - "transport": "Direct" - }, - "logging": { - "transports": [ - "file", - "stdout" - ] - }, - "process": "systemd", - "paths": { - "contentPath": "/var/lib/ghost/content" - } -} diff --git a/ghost/docker-compose.yml b/ghost/docker-compose.yml index c7d23e0..b9109a6 100644 --- a/ghost/docker-compose.yml +++ b/ghost/docker-compose.yml @@ -4,5 +4,8 @@ ghost: - "127.0.0.1:2368:2368" volumes: - ./data:/var/lib/ghost/content - - ./data/config.json:/var/lib/ghost/config.production.json - restart: always + environment: + - url=https://blog.easypi.duckdns.org + - database__client=sqlite3 + - database__connection__filename=/var/lib/ghost/content/data/ghost.db + restart: unless-stopped