diff --git a/public/svgs/paymenter.svg b/public/svgs/paymenter.svg new file mode 100644 index 000000000..8c063ff9e --- /dev/null +++ b/public/svgs/paymenter.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/templates/compose/paymenter.yaml b/templates/compose/paymenter.yaml new file mode 100644 index 000000000..132d64b1e --- /dev/null +++ b/templates/compose/paymenter.yaml @@ -0,0 +1,57 @@ +# documentation: https://paymenter.org/docs/guides/docker +# slogan: Open-Source Billing, Built for Hosting +# tags: automation, billing, open source +# logo: svgs/paymenter.svg +# port: 80 + +services: + database: + image: mariadb:10.11 + command: --default-authentication-plugin=mysql_native_password + volumes: + - "mysql:/var/lib/mysql" + healthcheck: + test: + ["CMD-SHELL", "healthcheck.sh --connect --innodb_initialized || exit 1"] + start_period: 10s + interval: 10s + timeout: 1s + retries: 3 + environment: + MYSQL_PASSWORD: ${SERVICE_PASSWORD_MYSQL} + MYSQL_ROOT_PASSWORD: ${SERVICE_PASSWORD_MYSQLROOT} + MYSQL_DATABASE: "paymenter" + MYSQL_USER: "paymenter" + cache: + image: redis:alpine + environment: + - 'REDIS_PASSWORD=${SERVICE_PASSWORD_64_REDIS}' + healthcheck: + test: ["CMD-SHELL", "redis-cli ping || exit 1"] + interval: 10s + timeout: 1s + retries: 3 + paymenter: + image: ghcr.io/paymenter/paymenter:latest + volumes: + - "app_logs:/app/storage/logs" + - "app_public:/app/storage/public" + healthcheck: + test: ["CMD-SHELL", "curl -sf http://localhost:80 || exit 1"] + interval: 10s + timeout: 1s + retries: 3 + environment: + SERVICE_FQDN_PAYMENTER: '${SERVICE_FQDN_PAYMENTER}' + DB_PASSWORD: ${SERVICE_PASSWORD_MYSQL} + APP_ENV: "production" + CACHE_STORE: "redis" + SESSION_DRIVER: "redis" + QUEUE_CONNECTION: "redis" + REDIS_HOST: "cache" + REDIS_USERNAME: default + REDIS_PASSWORD: '${SERVICE_PASSWORD_64_REDIS}' + DB_CONNECTION: "mariadb" + DB_HOST: "database" + DB_PORT: "3306" + APP_KEY: ${SERVICE_BASE64_KEY}