maelgangloff / domain-watchdog

An app that uses RDAP to collect publicly available info about domains, track their history, and purchase them
https://demo.domainwatchdog.eu
GNU Affero General Public License v3.0
180 stars 9 forks source link

Submit to Coolify #40

Open AlejandroAkbal opened 4 weeks ago

AlejandroAkbal commented 4 weeks ago

Coolify has 60k users that could easily enjoy a one click install of this wonderful project

image

You can create a template for them to install with one click following this docs: https://coolify.io/docs/knowledge-base/add-a-service

maelgangloff commented 4 weeks ago

Thanks but it would require too much code restructuring to support these new environment variables and would require adding more configuration. I'll leave this issue open if anyone wants to do it.

AlejandroAkbal commented 3 weeks ago

There is not new environment variables, Coolify does not require anything special, its just docker compose files, special env vars are a plus for automatic configuration, but are not required

See: https://github.com/coollabsio/coolify/blob/main/templates/compose/n8n.yaml

AlejandroAkbal commented 2 weeks ago

WIP version:

# documentation: https://github.com/maelgangloff/domain-watchdog
# slogan: Monitor's domains and purchases them when available.
# tags: domain,watchdog,monitoring,management
# logo: svgs/domain-watchdog.svg
# port: 8080

services:
    domainwatchdog:
        image: maelgangloff/domain-watchdog:latest
        environment:
            SERVER_NAME: http://${SERVER_NAME:-localhost}
            DATABASE_URL: postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database:5432/domainwatchdog?serverVersion=${POSTGRES_VERSION:-16}&charset=utf8
            APP_SECRET: ${SERVICE_BASE64_DOMAINWATCHDOG}
            REGISTRATION_ENABLED: ${REGISTRATION_ENABLED:-true}
            REGISTRATION_VERIFY_EMAIL: ${REGISTRATION_VERIFY_EMAIL:-false}
            LIMITED_FEATURES: ${LIMITED_FEATURES:-false}
            LIMIT_MAX_WATCHLIST: ${LIMIT_MAX_WATCHLIST:-0}
            LIMIT_MAX_WATCHLIST_DOMAINS: ${LIMIT_MAX_WATCHLIST_DOMAINS:-0}
            LIMIT_MAX_WATCHLIST_WEBHOOKS: ${LIMIT_MAX_WATCHLIST_WEBHOOKS:-0}
            MAILER_DSN: ${MAILER_DSN:-null://null}
        volumes:
            - caddy_data:/data
            - caddy_config:/config
            - domainwatchdog_content:/app/public/content

    php-worker:
        image: maelgangloff/domain-watchdog:latest
        restart: always
        command: php /app/bin/console messenger:consume --all --time-limit=3600 -vvv
        environment:
            DATABASE_URL: postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database:5432/domainwatchdog?serverVersion=${POSTGRES_VERSION:-16}&charset=utf8
            APP_SECRET: ${SERVICE_BASE64_DOMAINWATCHDOG}
            MAILER_DSN: ${MAILER_DSN:-null://null}
        healthcheck:
            disable: true

    database:
        image: postgres:${POSTGRES_VERSION:-16}-alpine
        environment:
            POSTGRES_DB: domainwatchdog
            POSTGRES_PASSWORD: ${SERVICE_PASSWORD_POSTGRES}
            POSTGRES_USER: ${SERVICE_USER_POSTGRES}
        healthcheck:
            test: [ "CMD", "pg_isready", "-d", "domainwatchdog", "-U", "${SERVICE_USER_POSTGRES}" ]
            timeout: 5s
            retries: 5
            start_period: 60s
        volumes:
            - database_data:/var/lib/postgresql/data:rw