From e47a5d6d3221c98a10f8232e7121d08713e13bac Mon Sep 17 00:00:00 2001 From: Cassowary Date: Sun, 8 Oct 2023 10:06:16 -0700 Subject: [PATCH] WIP commit in debug mode --- abra.sh | 104 ++++++++++++++++++++++----------------------- compose.yml | 16 ++++--- entrypoint.sh.tmpl | 7 +++ 3 files changed, 69 insertions(+), 58 deletions(-) mode change 100644 => 100755 abra.sh mode change 100644 => 100755 entrypoint.sh.tmpl diff --git a/abra.sh b/abra.sh old mode 100644 new mode 100755 index 8d62c3f..aa3b18d --- a/abra.sh +++ b/abra.sh @@ -1,70 +1,70 @@ #!/bin/bash -export ENTRYPOINT_CONF_VERSION=v7 +export ENTRYPOINT_CONF_VERSION=v11 -assets() { - set -x OTP_SECRET $(cat /run/secrets/otp_secret) - set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) - set -x DB_PASS $(cat /run/secrets/db_password) +# assets() { +# set -x OTP_SECRET $(cat /run/secrets/otp_secret) +# set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) +# set -x DB_PASS $(cat /run/secrets/db_password) - RAILS_ENV=production bundle exec rails assets:precompile -} +# RAILS_ENV=production bundle exec rails assets:precompile +# } -setup() { - set -x OTP_SECRET $(cat /run/secrets/otp_secret) - set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) - set -x DB_PASS $(cat /run/secrets/db_password) +# setup() { +# set -x OTP_SECRET $(cat /run/secrets/otp_secret) +# set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) +# set -x DB_PASS $(cat /run/secrets/db_password) - RAILS_ENV=production bundle exec rake db:setup -} +# RAILS_ENV=production bundle exec rake db:setup +# } -admin() { - set -x OTP_SECRET $(cat /run/secrets/otp_secret) - set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) - set -x DB_PASS $(cat /run/secrets/db_password) +# admin() { +# set -x OTP_SECRET $(cat /run/secrets/otp_secret) +# set -x SECRET_KEY_BASE $(cat /run/secrets/secret_key_base) +# set -x DB_PASS $(cat /run/secrets/db_password) - RAILS_ENV=production bin/tootctl accounts create "$1" --email "$2" --confirmed --role admin -} +# accounts create "$1" --email "$2" --confirmed --role admin +# } -secrets() { - docker context use default > /dev/null 2>&1 +# secrets() { +# docker context use default > /dev/null 2>&1 - echo "Generating secrets for new Hometown deployment..." - echo "" +# echo "Generating secrets for new Hometown deployment..." +# echo "" - SECRET_KEY_BASE=$(docker run --rm tootsuite/mastodon:v3.4.0 bundle exec rake secret) - abra app secret insert "$APP_NAME" secret_key_base v1 "$SECRET_KEY_BASE" - echo "SECRET_KEY_BASE = $SECRET_KEY_BASE" - echo "" +# SECRET_KEY_BASE=$(docker run --rm tootsuite/mastodon:v3.4.0 bundle exec rake secret) +# abra app secret insert "$APP_NAME" secret_key_base v1 "$SECRET_KEY_BASE" +# echo "SECRET_KEY_BASE = $SECRET_KEY_BASE" +# echo "" - OTP_SECRET=$(docker run --rm tootsuite/mastodon:v3.4.0 bundle exec rake secret) - abra app secret insert "$APP_NAME" otp_secret v1 "$OTP_SECRET" - echo "OTP_SECRET = $OTP_SECRET" - echo "" +# OTP_SECRET=$(docker run --rm tootsuite/mastodon:v3.4.0 bundle exec rake secret) +# abra app secret insert "$APP_NAME" otp_secret v1 "$OTP_SECRET" +# echo "OTP_SECRET = $OTP_SECRET" +# echo "" - docker run \ - -e SECRET_KEY_BASE="$SECRET_KEY_BASE" \ - -e OTP_SECRET="$OTP_SECRET" \ - --rm tootsuite/mastodon:v3.4.0 \ - bundle exec rake mastodon:webpush:generate_vapid_key \ - > /tmp/key.txt +# docker run \ +# -e SECRET_KEY_BASE="$SECRET_KEY_BASE" \ +# -e OTP_SECRET="$OTP_SECRET" \ +# --rm tootsuite/mastodon:v3.4.0 \ +# bundle exec rake mastodon:webpush:generate_vapid_key \ +# > /tmp/key.txt - VAPID_PRIVATE_KEY=$(grep -oP "VAPID_PRIVATE_KEY=\K.+" "/tmp/key.txt") - VAPID_PUBLIC_KEY=$(grep -oP "VAPID_PUBLIC_KEY=\K.+" "/tmp/key.txt") - rm -rf /tmp/key.txt +# VAPID_PRIVATE_KEY=$(grep -oP "VAPID_PRIVATE_KEY=\K.+" "/tmp/key.txt") +# VAPID_PUBLIC_KEY=$(grep -oP "VAPID_PUBLIC_KEY=\K.+" "/tmp/key.txt") +# rm -rf /tmp/key.txt - echo "VAPID_PUBLIC_KEY = $VAPID_PUBLIC_KEY" - echo "!IMPORTANT! you MUST insert this VAPID_PUBLIC_KEY into your app .env config !IMPORTANT!" - echo "" +# echo "VAPID_PUBLIC_KEY = $VAPID_PUBLIC_KEY" +# echo "!IMPORTANT! you MUST insert this VAPID_PUBLIC_KEY into your app .env config !IMPORTANT!" +# echo "" - abra app secret insert "$APP_NAME" vapid_private_key v1 "$VAPID_PRIVATE_KEY" - echo "VAPID_PRIVATE_KEY = $VAPID_PRIVATE_KEY" - echo "" +# abra app secret insert "$APP_NAME" vapid_private_key v1 "$VAPID_PRIVATE_KEY" +# echo "VAPID_PRIVATE_KEY = $VAPID_PRIVATE_KEY" +# echo "" - abra app secret generate "$APP_NAME" db_password v1 - echo "" +# abra app secret generate "$APP_NAME" db_password v1 +# echo "" - echo "don't forget to insert your smtp_password! your deployment won't work without it" - echo "run \"abra app secret insert $APP_NAME smtp_password v1 YOURSMTPPASSWORD\"" - echo "" -} +# echo "don't forget to insert your smtp_password! your deployment won't work without it" +# echo "run \"abra app secret insert $APP_NAME smtp_password v1 YOURSMTPPASSWORD\"" +# echo "" +# } diff --git a/compose.yml b/compose.yml index 1b2615e..107a0be 100644 --- a/compose.yml +++ b/compose.yml @@ -3,8 +3,8 @@ version: "3.8" services: app: - image: yakumosaki/glitch-soc:20230927_13 - command: bash -c "rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000" + image: lscr.io/linuxserver/mastodon:glitch-ebd20175-ls78 + # command: bash -c "rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000" networks: &bothNetworks - proxy - internal_network @@ -19,16 +19,19 @@ services: - "traefik.http.routers.${STACK_NAME}_web.rule=Host(`${DOMAIN}`)" - "traefik.http.routers.${STACK_NAME}_web.entrypoints=web-secure" - "traefik.http.routers.${STACK_NAME}_web.tls.certresolver=${LETS_ENCRYPT_ENV}" - - "coop-cloud.${STACK_NAME}.version=0.2.3+v3.5.10-hometown-1.0.8" + - "coop-cloud.${STACK_NAME}.version=0.0.0+20230927" configs: &configs - source: entrypoint_sh target: /usr/local/bin/entrypoint.sh mode: 0555 - entrypoint: &entrypoint /usr/local/bin/entrypoint.sh + # entrypoint: &entrypoint /usr/local/bin/entrypoint.sh + entrypoint: &entrypoint ['tail', '-f', '/dev/null'] volumes: &appVolume - app:/opt/mastodon/public/system - healthcheck: - test: ["CMD-SHELL", "wget -q --spider --header 'x-forwarded-proto: https' --proxy=off localhost:3000/api/v1/instance || exit 1"] + #healthcheck: + # + # broken with authorized fetch and limited fed apparently + # test: ["CMD-SHELL", "wget -q --spider --header 'x-forwarded-proto: https' --proxy=off localhost:3000/api/v1/instance || exit 1"] secrets: &secrets - db_password - otp_secret @@ -145,6 +148,7 @@ services: - VAPID_PRIVATE_KEY_FILE=/run/secrets/vapid_private_key - VAPID_PUBLIC_KEY - WEB_DOMAIN + - TRUSTED_PROXY_IP streaming: image: yakumosaki/glitch-soc:20230927_13 diff --git a/entrypoint.sh.tmpl b/entrypoint.sh.tmpl old mode 100644 new mode 100755 index 4f218e2..25e83f6 --- a/entrypoint.sh.tmpl +++ b/entrypoint.sh.tmpl @@ -34,4 +34,11 @@ file_env "VAPID_PRIVATE_KEY" file_env "OIDC_CLIENT_SECRET" {{ end }} +export RAILS_ENV=production +bundle exec rake db:setup || /bin/true +#bundle exec rake webpacker:verify_install || bundle exec rake webpacker:install +#bundle exec rake webpacker:yarn_install +bundle exec rake assets:precompile || /bin/true + + /usr/bin/tini -s -- "$@"