diff --git a/Bookstack/backup-docker-compose.yml b/Bookstack/backup-docker-compose.yml deleted file mode 100644 index 41c8218..0000000 --- a/Bookstack/backup-docker-compose.yml +++ /dev/null @@ -1,52 +0,0 @@ -services: - db: - image: mariadb:11 - container_name: bookstack-db - restart: unless-stopped - environment: - MYSQL_ROOT_PASSWORD: 3OSyIgZjyV4Tze - MYSQL_DATABASE: bookstack - MYSQL_USER: bookstack - MYSQL_PASSWORD: 3OSyIgZjyV4Tze - volumes: - # Persist database files - - /opt/Docker-Deployments/Bookstack/db:/var/lib/mysql - networks: - - internal - - bookstack: - image: lscr.io/linuxserver/bookstack:latest - container_name: bookstack - restart: unless-stopped - depends_on: - - db - ports: - # Web interface - - "6875:80" - environment: - # Application URL (change to your domain for production) - - APP_URL=https://book.mikemcfetridge.com - # Session encryption key from the appkey command above - - APP_KEY=base64:k1BQQ5IB+TDD4XOmDtOdxupfvBECi+Z1Ay9C12/5YgA= - # Database connection - - DB_HOST=db - - DB_PORT=3306 - - DB_DATABASE=bookstack - - DB_USERNAME=bookstack - - DB_PASSWORD=3OSyIgZjyV4Tze - # Timezone - - TZ=America/New_York - # User/group IDs for file permissions - - PUID=1000 - - PGID=1000 - volumes: - # Application configuration - - /opt/Docker-Deployments/Bookstack/config:/config - networks: - - external - - internal -networks: - internal: - external: true # Tells Compose not to create this network - external: - external: true # Tells Compose not to create this network diff --git a/Mealie/.env b/Mealie/.env new file mode 100644 index 0000000..903ae7c --- /dev/null +++ b/Mealie/.env @@ -0,0 +1,22 @@ +# General Settings +TZ=America/New_York +PUID=1000 +PGID=1000 +DATA_DIR=/opt/Docker-Deployments/Mealie +MEALIE_PORT=9200 +MEMORY_LIMIT=1000M + +# Mealie Application Settings +ALLOW_SIGNUP=false +MAX_WORKERS=1 +WEB_CONCURRENCY=1 +BASE_URL=https://mealie.mikemcfetridge.com + +# SMTP Email Configuration +SMTP_HOST=mail.mmcfetridge.net +SMTP_PORT=465 +SMTP_FROM_NAME=miker@mmcfetridge.net +SMTP_FROM_EMAIL=miker@mmcfetridge.net +SMTP_USER=miker@mmcfetridge.net +SMTP_PASSWORD=!Sucyetat123 +SMTP_AUTH_STRATEGY=SSL diff --git a/Mealie/docker-compose.yml b/Mealie/docker-compose.yml index 22c046f..f8c6d09 100644 --- a/Mealie/docker-compose.yml +++ b/Mealie/docker-compose.yml @@ -1,36 +1,35 @@ services: mealie: - image: ghcr.io/mealie-recipes/mealie:latest # Specifies the Mealie Docker i> - container_name: mealie # Names the container for easier> + image: ghcr.io/mealie-recipes/mealie:latest + container_name: mealie + restart: unless-stopped ports: - - "9200:9000" # Maps port 9925 on the host to > + - "${MEALIE_PORT}:9000" deploy: resources: limits: - memory: 1000M # Limits the container to use a > + memory: ${MEMORY_LIMIT} volumes: - - /opt/Docker-Deployments/Mealie/data:/app/data/ # Persists data in> - - /opt/Docker-Deployments/Mealie/config/addons_config/mealie/config.yaml:/config/config.yanl + - ${DATA_DIR}/data:/app/data/ + - ${DATA_DIR}/config/addons_config/mealie/config.yaml:/config/config.yaml environment: - - ALLOW_SIGNUP=false # Allows new user signups on the> - - PUID=1000 # Sets the user ID for the conta> - - PGID=1000 # Sets the group ID for the cont> - - TZ=America/New_York # Sets the timezone for the cont> - - MAX_WORKERS=1 # Limits the number of workers t> - - WEB_CONCURRENCY=1 # Sets the concurrency level for> - - BASE_URL=mealie.mikemcfetridge.com # The base URL where Mealie is a> + - ALLOW_SIGNUP=${ALLOW_SIGNUP} + - PUID=${PUID} + - PGID=${PGID} + - TZ=${TZ} + - MAX_WORKERS=${MAX_WORKERS} + - WEB_CONCURRENCY=${WEB_CONCURRENCY} + - BASE_URL=${BASE_URL} # Email Settings - - SMTP_HOST=mail.mmcfetridge.net - - SMTP_PORT=465 - - SMTP_FROM_NAME=miker@mmcfetridge.net - - SMTP_AUTH_STRATEGY=TLS - - SMTP_FROM_EMAIL=miker@mmcfetridge.net - - SMTP_USER=miker@mmcfetridge.net - - SMTP_PASSWORD="!Sucyetat123" + - SMTP_HOST=${SMTP_HOST} + - SMTP_PORT=${SMTP_PORT} + - SMTP_FROM_NAME=${SMTP_FROM_NAME} + - SMTP_AUTH_STRATEGY=${SMTP_AUTH_STRATEGY} + - SMTP_FROM_EMAIL=${SMTP_FROM_EMAIL} + - SMTP_USER=${SMTP_USER} + - SMTP_PASSWORD=${SMTP_PASSWORD} networks: - - external - restart: unless-stopped - + - external healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9000"] interval: 10s @@ -40,4 +39,4 @@ services: networks: external: - external: true # Tells Compose not to create this network \ No newline at end of file + external: true diff --git a/Semaphore/.env b/Semaphore/.env new file mode 100644 index 0000000..d1ea34d --- /dev/null +++ b/Semaphore/.env @@ -0,0 +1,26 @@ +# General System Settings +PUID=1000 +PGID=1000 +SEMAPHORE_PORT=3020 +ANSIBLE_HOST_KEY_CHECKING=False +DOCKER_HOST=tcp://docker_proxy:2375 + +# Semaphore Admin User +SEMAPHORE_ADMIN=mmcfetridge +SEMAPHORE_ADMIN_NAME=Mike McFetridge +SEMAPHORE_ADMIN_EMAIL=mmcfetridg@aol.com +SEMAPHORE_ADMIN_PASSWORD=Dy7zxAyDqdYN443g4pI3 + +# Security & Storage +SEMAPHORE_DB_DIALECT=sqlite +SEMAPHORE_ACCESS_KEY_ENCRYPTION=mrmKv7EztqRCnlGo34IvlvoilXqvDKYnFIWX2lg+hZc= + +# Email Settings +SEMAPHORE_EMAIL_ALERT=true +SEMAPHORE_EMAIL_HOST=mail.mmcfetridge.net +SEMAPHORE_EMAIL_PORT=465 +SEMAPHORE_EMAIL_SENDER=miker@mmcfetridge.net +SEMAPHORE_EMAIL_USERNAME=miker@mmcfetridge.net +SEMAPHORE_EMAIL_PASSWORD=!Sucyetat123 +SEMAPHORE_EMAIL_SECURE=true +SEMAPHORE_EMAIL_TLS=false diff --git a/Semaphore/docker-compose.yml b/Semaphore/docker-compose.yml index 7d82a25..414cd51 100644 --- a/Semaphore/docker-compose.yml +++ b/Semaphore/docker-compose.yml @@ -2,50 +2,49 @@ volumes: semaphore_data: semaphore_config: semaphore_tmp: - + services: semaphore: image: semaphoreui/semaphore:latest container_name: semaphore + restart: unless-stopped ports: - - "3020:3020" # Web UI accessed via port 3020 + - "${SEMAPHORE_PORT}:${SEMAPHORE_PORT}" environment: - - PUID=1000 - - PGID=1000 - - SEMAPHORE_DB_DIALECT=sqlite - - SEMAPHORE_ADMIN_PASSWORD=Dy7zxAyDqdYN443g4pI3 # Change this on first boot! - - SEMAPHORE_ADMIN_NAME=Mike McFetridge - - SEMAPHORE_ADMIN_EMAIL=mmcfetridg@aol.com - - SEMAPHORE_ADMIN=mmcfetridge - # Point Semaphore to our secure local Docker Proxy instead of raw socket - - DOCKER_HOST=tcp://docker_proxy:2375 - - SEMAPHORE_PORT=3020 - - ANSIBLE_HOST_KEY_CHECKING=False - - SEMAPHORE_ACCESS_KEY_ENCRYPTION=mrmKv7EztqRCnlGo34IvlvoilXqvDKYnFIWX2lg+hZc= + - PUID=${PUID} + - PGID=${PGID} + - SEMAPHORE_DB_DIALECT=${SEMAPHORE_DB_DIALECT} + - SEMAPHORE_ADMIN_PASSWORD=${SEMAPHORE_ADMIN_PASSWORD} + - SEMAPHORE_ADMIN_NAME=${SEMAPHORE_ADMIN_NAME} + - SEMAPHORE_ADMIN_EMAIL=${SEMAPHORE_ADMIN_EMAIL} + - SEMAPHORE_ADMIN=${SEMAPHORE_ADMIN} + # Docker Proxy endpoint + - DOCKER_HOST=${DOCKER_HOST} + - SEMAPHORE_PORT=${SEMAPHORE_PORT} + - ANSIBLE_HOST_KEY_CHECKING=${ANSIBLE_HOST_KEY_CHECKING} + - SEMAPHORE_ACCESS_KEY_ENCRYPTION=${SEMAPHORE_ACCESS_KEY_ENCRYPTION} # Email Configuration - - SEMAPHORE_EMAIL_ALERT=True - - SEMAPHORE_EMAIL_HOST=mail.mmcfetridge.net - - SEMAPHORE_EMAIL_PORT=465 - - SEMAPHORE_EMAIL_SENDER=miker@mmcfetridge.net - - SEMAPHORE_EMAIL_USERNAME=miker@mmcfetridge.net - - SEMAPHORE_EMAIL_PASSWORD="!Sucyetat123" - - SEMAPHORE_EMAIL_SECURE=true - - SEMAPHORE_EMAIL_TLS=true + - SEMAPHORE_EMAIL_ALERT=${SEMAPHORE_EMAIL_ALERT} + - SEMAPHORE_EMAIL_HOST=${SEMAPHORE_EMAIL_HOST} + - SEMAPHORE_EMAIL_PORT=${SEMAPHORE_EMAIL_PORT} + - SEMAPHORE_EMAIL_SENDER=${SEMAPHORE_EMAIL_SENDER} + - SEMAPHORE_EMAIL_USERNAME=${SEMAPHORE_EMAIL_USERNAME} + - SEMAPHORE_EMAIL_PASSWORD=${SEMAPHORE_EMAIL_PASSWORD} + - SEMAPHORE_EMAIL_SECURE=${SEMAPHORE_EMAIL_SECURE} + - SEMAPHORE_EMAIL_TLS=${SEMAPHORE_EMAIL_TLS} volumes: - semaphore_data:/var/lib/semaphore - semaphore_config:/etc/semaphore - semaphore_tmp:/tmp/semaphore networks: - external - restart: unless-stopped - healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3020"] interval: 10s retries: 3 timeout: 10s start_period: 30s - + networks: external: - external: true # Tells Compose not to create this network \ No newline at end of file + external: true