diff --git a/.gitignore b/.gitignore index 955bca9..7749165 100644 --- a/.gitignore +++ b/.gitignore @@ -2,7 +2,9 @@ Volumes/* # Ignore backed up config files. -*.yml.* +*.yml.*backup* +*.yml.*Backup* +*.yml.*BACKUP* # Ignore logs logs/* @@ -19,3 +21,6 @@ Config/MailServer/setup.sh # Ignore any private key information. private.key + +# Ignore secrets for Invidious. +Config/Invidious/*.env diff --git a/Config/Hyperling.com/docker-compose.yml b/Config/Hyperling.com/docker-compose.yml index 641b063..3fb1a51 100644 --- a/Config/Hyperling.com/docker-compose.yml +++ b/Config/Hyperling.com/docker-compose.yml @@ -8,5 +8,5 @@ services: image: node restart: always build: ./ - ports: + ports: - 8317:8080 diff --git a/Config/Invidious/README.md b/Config/Invidious/README.md new file mode 100644 index 0000000..0b95124 --- /dev/null +++ b/Config/Invidious/README.md @@ -0,0 +1,38 @@ +[TBD: This setup has not been complete yet.] + +# Installation + +1. Create inv.env file and populate the following values: +[TBD does this work since the var is being piped in the compose file?] + ``` + user: kemal + password: kemal + domain="" + hmac_key="" + ``` + +1. Create pg.env and populate the following values: + ``` + POSTGRES_USER: + POSTGRES_PASSWORD: + ``` + +1. Make any changes to the `docker-compose.yml` file and start it up. + ``` + # docker compose up -d + ``` + +The official instructions also suggest cloning the project first, but not sure +why. [TBD: It does not seem likethe cloning is necessary, the project starts fine.] + +## Official Installation Documentation + +https://docs.invidious.io/installation/ + +# Configuration + + + +## Official Config Guide + +https://docs.invidious.io/configuration/ diff --git a/Config/Invidious/docker-compose.yml.TBD b/Config/Invidious/docker-compose.yml.TBD new file mode 100644 index 0000000..c83bc53 --- /dev/null +++ b/Config/Invidious/docker-compose.yml.TBD @@ -0,0 +1,61 @@ +# Invidious configuration. +# This is a revised version of the original work here: +# https://hub.docker.com/_/nextcloud + +# Changelog: +# 2023-07-16 Change from mariadb:10.5 to 10.6. + +version: "3" +services: + + invidious: + image: quay.io/invidious/invidious:latest + restart: always + ports: + - "8300:3000" + env_file: + - ./inv.env + environment: + # Please read the following file for a comprehensive list of all available + # configuration options and their associated syntax: + # https://github.com/iv-org/invidious/blob/master/config/config.example.yml + INVIDIOUS_CONFIG: | + db: + dbname: invidious + user: + password: + host: invidious-db + port: 5432 + check_tables: true + # external_port: + domain: + # https_only: false + # statistics_enabled: false + hmac_key: + healthcheck: + test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1 + interval: 30s + timeout: 5s + retries: 2 + logging: + options: + max-size: "1G" + max-file: "4" + depends_on: + - invidious-db + + invidious-db: + image: docker.io/library/postgres:14 + restart: always + volumes: + - ../../Volumes/Invidious/postgres/data:/var/lib/postgresql/data + - ../../Volumes/Invidious/postgres/config/sql:/config/sql + - ../../Volumes/Invidious/postgres/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh + env_file: + - ./pg.env + environment: + POSTGRES_DB: invidious + POSTGRES_USER: + POSTGRES_PASSWORD: + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"] diff --git a/Config/OnlyOffice/docker-compose.yml b/Config/OnlyOffice/docker-compose.yml new file mode 100644 index 0000000..ecdf587 --- /dev/null +++ b/Config/OnlyOffice/docker-compose.yml @@ -0,0 +1,11 @@ +# 2023-07-25 +# OnlyOffice server for Nextcloud. + +version: '3' + +services: + app: + image: onlyoffice/documentserver + restart: always + ports: + - 8000:80 diff --git a/Config/ReverseProxy/docker-compose.yml b/Config/ReverseProxy/docker-compose.yml index a4c9c21..f457c62 100644 --- a/Config/ReverseProxy/docker-compose.yml +++ b/Config/ReverseProxy/docker-compose.yml @@ -8,6 +8,7 @@ version: '3' services: + app: build: ./ restart: always @@ -18,8 +19,10 @@ services: - ../../Volumes/ReverseProxy/letsencrypt:/etc/nginx/letsencrypt - ../../Volumes/ReverseProxy/letsencrypt-certs:/etc/nginx/certs command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'" + certbot: image: certbot/certbot + restart: always volumes: - ../../Volumes/ReverseProxy/letsencrypt:/etc/letsencrypt - ../../Volumes/ReverseProxy/letsencrypt-certs:/var/www/certbot diff --git a/source.env b/source.env index 4511153..b242c68 100755 --- a/source.env +++ b/source.env @@ -2,6 +2,13 @@ # Needs run in the current shell environment, such as: # source /PATH_TO_GIT_PROJECT/source.env -export DOCKER_HOME="$(dirname -- "${BASH_SOURCE[0]}")" -export DOCKER_PATH="$DOCKER_HOME/bin" -export PATH="$DOCKER_PATH:$PATH" +DIR="$(dirname -- "${BASH_SOURCE[0]}")" +if [[ $DIR == \.* ]]; then + DIR="`pwd`" +fi + +DOCKER_HOME="$DIR" +DOCKER_PATH="$DOCKER_HOME/bin" +PATH="$DOCKER_PATH:$PATH" + +export DOCKER_HOME DOCKER_PATH PATH