| @@ -123,6 +123,19 @@ services: | |||
| volumes: | |||
| - ${GITEA_DATA_VOLUME_PATH}:/data | |||
| blog1: | |||
| image: ghost | |||
| restart: always | |||
| # ports: | |||
| # - "2368:2368" | |||
| environment: | |||
| database__client: sqlite3 | |||
| database__connection__filename: content/data/ghost.db | |||
| url: ${BLOG_1_URL} | |||
| volumes: | |||
| - ${BLOG_1_VOLUME_PATH}:/var/lib/ghost/content | |||
| restart: always | |||
| hauk: | |||
| build: | |||
| context: ./images/hauk/ | |||
| @@ -56,6 +56,11 @@ GITEA_SERVER_NAME=git | |||
| GITEA_DATA_VOLUME_PATH=${VOLUMES_PATH}/gitea/data | |||
| GITEA_HTTP_PORT=2443 | |||
| # GHOST BLOGS | |||
| BLOG_1_SERVER_NAME=blog | |||
| BLOG_1_URL=${BLOG_1_URL} | |||
| BLOG_1_VOLUME_PATH=${VOLUMES_PATH}/blogs/blog1 | |||
| # PI-HOLE | |||
| PIHOLE_CONFIG_VOLUME_PATH=${VOLUMES_PATH}/pihole/pihole | |||
| @@ -22,11 +22,13 @@ frontend https-in | |||
| #acl gitea-acl ssl_fc_sni ${GITEA_URL} | |||
| acl nextcloud-acl ssl_fc_sni_reg ^${NEXTCLOUD_SERVER_NAME}\. | |||
| acl gitea-acl ssl_fc_sni_reg ^${GITEA_SERVER_NAME}\. | |||
| acl blog1-acl ssl_fc_sni_reg ^${BLOG_1_SERVER_NAME}\. | |||
| acl hauk-acl ssl_fc_sni_reg ^${HAUK_SERVER_NAME}\. | |||
| use_backend letsencrypt-backend if letsencrypt-acl | |||
| use_backend nextcloud if nextcloud-acl | |||
| use_backend gitea if gitea-acl | |||
| use_backend blog1 if blog1-acl | |||
| use_backend hauk if hauk-acl | |||
| default_backend nextcloud | |||
| @@ -47,6 +49,14 @@ backend gitea | |||
| server gitea gitea:2443 maxconn 32 check ssl verify none | |||
| backend blog1 | |||
| # https://forum.ghost.org/t/cant-get-full-site-ssl/12478/6 | |||
| # https://blog.woodenstake.se/starting-a-blog-again/ | |||
| option forwardfor | |||
| http-request set-header X-Forwarded-Port %[dst_port] | |||
| http-request add-header X-Forwarded-Proto https if { ssl_fc } | |||
| server blog1 blog1:2368 maxconn 32 | |||
| backend hauk | |||
| server hauk hauk:80 maxconn 32 | |||
| @@ -16,7 +16,7 @@ haproxy -f $CFG_LE_FILE -D -p /tmp/haproxy.pid | |||
| # Get Let's Encrypt certificates | |||
| HAPROXY_CERTS="" | |||
| SERVER_NAMES="${NEXTCLOUD_SERVER_NAME} ${GITEA_SERVER_NAME} ${HAUK_SERVER_NAME}" | |||
| SERVER_NAMES="${NEXTCLOUD_SERVER_NAME} ${GITEA_SERVER_NAME} ${BLOG_1_SERVER_NAME} ${HAUK_SERVER_NAME}" | |||
| #echo Server names: $SERVER_NAMES | |||
| for domain in ${DOMAINS}; do | |||
| for server_name in ${SERVER_NAMES}; do | |||
| @@ -41,6 +41,7 @@ done | |||
| #sed -i "s/\${GITEA_URL}/${GITEA_URL}/g" $CFG_FILE | |||
| sed -i "s/\${NEXTCLOUD_SERVER_NAME}/${NEXTCLOUD_SERVER_NAME}/g" $CFG_FILE | |||
| sed -i "s/\${GITEA_SERVER_NAME}/${GITEA_SERVER_NAME}/g" $CFG_FILE | |||
| sed -i "s/\${BLOG_1_SERVER_NAME}/${BLOG_1_SERVER_NAME}/g" $CFG_FILE | |||
| sed -i "s/\${HAUK_SERVER_NAME}/${HAUK_SERVER_NAME}/g" $CFG_FILE | |||
| #echo sed -i "s/\${HAPROXY_CERTS}/${HAPROXY_CERTS}/g" ${CFG_FILE} | |||
| sed -i "s/\${HAPROXY_CERTS}/${HAPROXY_CERTS//\//\\/}/g" ${CFG_FILE} | |||
| @@ -140,6 +140,11 @@ if [[ ${#paperless_ftp_pwd} -eq 0 ]]; then | |||
| paperless_ftp_pwd=`eval "$PWD_GEN"` | |||
| fi | |||
| read -p "Blog 1 URL (https://blog.${domain})" blog_1_url | |||
| if [[ ${#blog_1_url} -eq 0 ]]; then | |||
| blog_1_url=https://blog.${domain} | |||
| fi | |||
| echo $'\E[33m' | |||
| echo "//////////////////////////////////////////////////" | |||
| echo "///////////////// PLEASE CONFIRM /////////////////" | |||
| @@ -156,6 +161,7 @@ echo Your LDAP Hauk Bind DN Uid is: $ldap_hauk_uid | |||
| echo Your Admin email. Let\'s Encrypt...: $admin_email | |||
| echo Your Paperless Web Server User: $paperless_webserver_user | |||
| echo Your SFTP User: $paperless_ftp_user | |||
| echo Your Blog 1 URL: $blog_1_url | |||
| echo $'\E[1;37m' | |||
| read -p "Are These Settings Correct? Yes (y), No (n): " confirm | |||
| @@ -231,6 +237,7 @@ for i in `ls *.env .env`; do | |||
| sed -i "s/\${PAPERLESS_FTP_USER}/${paperless_ftp_user}/g" $i | |||
| sed -i "s/\${IP_LOOKUP}/${IP_LOOKUP}/g" $i | |||
| sed -i "s/\${IPv6_LOOKUP}/${IPv6_LOOKUP}/g" $i | |||
| sed -i "s/\${BLOG_1_URL}/${blog_1_url}/g" $i | |||
| #sed -i "s/\${}/${}/g" $i | |||
| done; | |||
| @@ -264,6 +271,7 @@ echo "PAPERLESS_CONSUMPTION_DIR=${PAPERLESS_CONSUMPTION_PATH}" >> sftp.env | |||
| echo "" >> haproxy.env | |||
| echo "NEXTCLOUD_SERVER_NAME=${NEXTCLOUD_SERVER_NAME}" >> haproxy.env | |||
| echo "GITEA_SERVER_NAME=${GITEA_SERVER_NAME}" >> haproxy.env | |||
| echo "BLOG_1_SERVER_NAME=${BLOG_1_SERVER_NAME}" >> haproxy.env | |||
| echo "HAUK_SERVER_NAME=${HAUK_SERVER_NAME}" >> haproxy.env | |||
| echo $'\E[33m' | |||
| @@ -293,6 +301,8 @@ sudo mkdir -p ${PAPERLESS_CONSUMPTION_VOLUME_PATH} | |||
| sudo mkdir -p ${PAPERLESS_EXPORT_VOLUME_PATH} | |||
| # gitea | |||
| sudo mkdir -p ${GITEA_DATA_VOLUME_PATH} | |||
| # blogs | |||
| sudo mkdir -p ${BLOG_1_VOLUME_PATH} | |||
| # Pi-Hole | |||
| sudo mkdir -p ${PIHOLE_CONFIG_VOLUME_PATH} | |||
| sudo mkdir -p ${PIHOLE_DNSMASQ_VOLUME_PATH} | |||