diff --git a/blueprints/dolibarr/docker-compose.yml b/blueprints/dolibarr/docker-compose.yml new file mode 100644 index 00000000..9e364c46 --- /dev/null +++ b/blueprints/dolibarr/docker-compose.yml @@ -0,0 +1,40 @@ +services: + dolibarr: + image: dolibarr/dolibarr:21.0.0 + restart: always + environment: + DOLI_DB_HOST: db + DOLI_DB_NAME: $DB_NAME + DOLI_DB_USER: $DB_USER + DOLI_DB_PASSWORD: $DB_PASSWORD + DOLI_URL_ROOT: ${DOLIBARR_HOST} + DOLI_ADMIN_LOGIN: admin + DOLI_ADMIN_PASSWORD: $ADMIN_PASSWORD + volumes: + - dolibarr_documents:/var/www/documents + - dolibarr_html:/var/www/html + depends_on: + db: + condition: service_healthy + + db: + image: mariadb:10.11 + restart: always + environment: + MYSQL_ROOT_PASSWORD: $DB_ROOT_PASSWORD + MYSQL_DATABASE: $DB_NAME + MYSQL_USER: $DB_USER + MYSQL_PASSWORD: $DB_PASSWORD + volumes: + - db_data:/var/lib/mysql + healthcheck: + test: ["CMD-SHELL", "healthcheck.sh --connect --innodb_initialized"] + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + +volumes: + dolibarr_documents: + dolibarr_html: + db_data: diff --git a/blueprints/dolibarr/logo.svg b/blueprints/dolibarr/logo.svg new file mode 100644 index 00000000..94b7c1a6 --- /dev/null +++ b/blueprints/dolibarr/logo.svg @@ -0,0 +1 @@ + diff --git a/blueprints/dolibarr/template.toml b/blueprints/dolibarr/template.toml new file mode 100644 index 00000000..923b0de7 --- /dev/null +++ b/blueprints/dolibarr/template.toml @@ -0,0 +1,23 @@ +[variables] +main_domain = "${domain}" +db_name = "dolibarr" +db_user = "dolibarr" +db_password = "${password:32}" +db_root_password = "${password:32}" +admin_password = "${password:32}" + +[config] +env = [ + "DOLIBARR_HOST=${main_domain}", + "DB_NAME=${db_name}", + "DB_USER=${db_user}", + "DB_PASSWORD=${db_password}", + "DB_ROOT_PASSWORD=${db_root_password}", + "ADMIN_PASSWORD=${admin_password}" +] +mounts = [] + +[[config.domains]] +serviceName = "dolibarr" +port = 80 +host = "${main_domain}" diff --git a/meta.json b/meta.json index 358c0902..7fc8b6b7 100644 --- a/meta.json +++ b/meta.json @@ -1850,6 +1850,25 @@ "grafana" ] }, + { + "id": "dolibarr", + "name": "Dolibarr", + "version": "21.0.0", + "description": "Dolibarr ERP & CRM is a modern software package that helps manage your organization's activities (contacts, quotes, invoices, orders, stocks, agenda, human resources, ecm, manufacturing).", + "logo": "logo.svg", + "links": { + "github": "https://github.com/Dolibarr/dolibarr", + "website": "https://www.dolibarr.org/", + "docs": "https://wiki.dolibarr.org/" + }, + "tags": [ + "erp", + "crm", + "business", + "management", + "invoicing" + ] + }, { "id": "domain-locker", "name": "Domain Locker",