diff --git a/public/svgs/documenso.png b/public/svgs/documenso.png new file mode 100644 index 000000000..baa636532 Binary files /dev/null and b/public/svgs/documenso.png differ diff --git a/public/svgs/dolibarr.png b/public/svgs/dolibarr.png new file mode 100644 index 000000000..f09119afc Binary files /dev/null and b/public/svgs/dolibarr.png differ diff --git a/templates/compose/documenso.yaml b/templates/compose/documenso.yaml new file mode 100644 index 000000000..38b6b4f74 --- /dev/null +++ b/templates/compose/documenso.yaml @@ -0,0 +1,42 @@ +# documentation: https://docs.documenso.com/ +# slogan: Document signing, finally open source +# tags: signing, opensource, document, pdf, e-signature, digital-signature, document-signing, pdf-signing, docusign +# logo: svgs/documenso.png +# port: 3000 + +services: + documenso: + image: documenso/documenso + depends_on: + database: + condition: service_healthy + environment: + - SERVICE_FQDN_DOCUMENSO_3000 + - NEXTAUTH_URL=${SERVICE_FQDN_DOCUMENSO_3000} + - NEXTAUTH_SECRET=${SERVICE_BASE64_AUTHSECRET} + - NEXT_PRIVATE_ENCRYPTION_KEY=${SERVICE_BASE64_ENCRYPTIONKEY} + - NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=${SERVICE_BASE64_SECONDARYENCRYPTIONKEY} + - NEXT_PUBLIC_WEBAPP_URL=${SERVICE_FQDN_DOCUMENSO_3000} + - NEXT_PRIVATE_DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database/${POSTGRES_DB:-documenso-db}?schema=public + - NEXT_PRIVATE_DIRECT_DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database/${POSTGRES_DB:-documenso-db}?schema=public + healthcheck: + test: + - CMD-SHELL + - "wget -q -O - http://documenso:3000/ | grep -q 'Sign in to your account'" + interval: 2s + timeout: 10s + retries: 20 + + database: + image: postgres:16-alpine + environment: + - POSTGRES_USER=${SERVICE_USER_POSTGRES} + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} + - POSTGRES_DB=${POSTGRES_DB:-documenso-db} + volumes: + - documenso_postgresql_data:/var/lib/postgresql/data + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] + interval: 5s + timeout: 20s + retries: 10 diff --git a/templates/compose/dolibarr.yaml b/templates/compose/dolibarr.yaml new file mode 100644 index 000000000..6c32d0f92 --- /dev/null +++ b/templates/compose/dolibarr.yaml @@ -0,0 +1,43 @@ +# documentation: https://www.dolibarr.org/documentation-home.php +# slogan: Dolibarr is a modern software package to manage your organization's activity (contacts, quotes, invoices, orders, stocks, agenda, hr, expense reports, accountancy, ecm, manufacturing, ...). +# tags: crm,ERP +# logo: svgs/dolibarr.png +# port: 80 + +services: + dolibarr: + image: dolibarr/dolibarr:latest + environment: + - SERVICE_FQDN_DOLIBARR_80 + - WWW_USER_ID=${WWW_USER_ID:-1000} + - WWW_GROUP_ID=${WWW_GROUP_ID:-1000} + - DOLI_DB_HOST=mariadb + - DOLI_DB_NAME=${MYSQL_DATABASE:-dolibarr-db} + - DOLI_DB_USER=${SERVICE_USER_MYSQL} + - DOLI_DB_PASSWORD=${SERVICE_PASSWORD_MYSQL} + - DOLI_URL_ROOT=${SERVICE_URL_DOLIBARR} + - DOLI_ADMIN_LOGIN=${SERVICE_USER_DOLIBARR} + - DOLI_ADMIN_PASSWORD=${SERVICE_PASSWORD_DOLIBARR} + - DOLI_CRON=${DOLI_CRON:-0} + - DOLI_INIT_DEMO=${DOLI_INIT_DEMO:-0} + - DOLI_COMPANY_NAME=${DOLI_COMPANY_NAME:-MyBigCompany} + healthcheck: + test: ["CMD", "curl", "-f", "http://127.0.0.1:80"] + interval: 2s + timeout: 10s + retries: 15 + + mariadb: + image: mariadb:latest + environment: + - MYSQL_DATABASE=${MYSQL_DATABASE:-dolibarr-db} + - MYSQL_USER=${SERVICE_USER_MYSQL} + - MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL} + - MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_ROOT} + volumes: + - dolibarr_mariadb_data:/var/lib/mysql + healthcheck: + test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] + interval: 5s + timeout: 20s + retries: 10