mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-12-02 15:39:57 +00:00
Reference: https://chatgpt.com/share/6928391d-7474-800f-bfcd-256b265a4fc8
89 lines
3.2 KiB
Django/Jinja
89 lines
3.2 KiB
Django/Jinja
#############################################
|
|
# SuiteCRM Docker Environment (.env)
|
|
# Built for Infinito.Nexus Roles
|
|
#############################################
|
|
|
|
# ------------------------------------------------
|
|
# Core Symfony / SuiteCRM 8 settings
|
|
# ------------------------------------------------
|
|
APP_ENV={{ 'dev' if (ENVIRONMENT | lower) == 'development' else 'prod' }}
|
|
APP_DEBUG="{{ MODE_DEBUG | bool | ternary(1, 0) }}"
|
|
|
|
# Use correct HTTPS Scheme
|
|
SERVER_SCHEME="{{ WEB_PROTOCOL }}"
|
|
TRUSTED_PROXIES="127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16"
|
|
TRUSTED_HOSTS="^{{ domain | replace('.', '\\\\.') }}$"
|
|
|
|
# ------------------------------------------------
|
|
# Database (Symfony-style)
|
|
# ------------------------------------------------
|
|
DATABASE_URL=mysql://{{ database_username }}:{{ database_password | urlencode }}@{{ database_host }}:{{ database_port }}/{{ database_name }}
|
|
DATABASE_DRIVER=pdo_mysql
|
|
DATABASE_SERVER_VERSION=10.11
|
|
|
|
# Keep legacy-style vars for external tools or debugging
|
|
SUITECRM_DB_HOST={{ database_host }}
|
|
SUITECRM_DB_PORT={{ database_port }}
|
|
SUITECRM_DB_NAME={{ database_name }}
|
|
SUITECRM_DB_USER={{ database_username }}
|
|
SUITECRM_DB_PASSWORD={{ database_password }}
|
|
|
|
# ------------------------------------------------
|
|
# Initial admin account (for your own tooling)
|
|
# ------------------------------------------------
|
|
SUITECRM_ADMIN_USERNAME={{ applications | get_app_conf(application_id, 'users.administrator.username') }}
|
|
SUITECRM_ADMIN_PASSWORD={{ applications | get_app_conf(application_id, 'credentials.administrator_password') }}
|
|
SUITECRM_ADMIN_EMAIL={{ users['administrator'].email }}
|
|
|
|
# Public base URL of the SuiteCRM instance
|
|
SUITECRM_URL={{ SUITECRM_URL }}
|
|
|
|
# ------------------------------------------------
|
|
# LDAP settings (legacy + SuiteCRM 8 / Symfony)
|
|
# ------------------------------------------------
|
|
{% if SUITECRM_LDAP_ENABLED | bool %}
|
|
AUTH_TYPE=ldap
|
|
|
|
# Autocreate
|
|
LDAP_AUTO_CREATE=enabled
|
|
LDAP_PROVIDER_BASE_DN='{{ LDAP.DN.OU.USERS }}'
|
|
LDAP_PROVIDER_SEARCH_DN='{{ LDAP.DN.ADMINISTRATOR.DATA }}'
|
|
LDAP_PROVIDER_SEARCH_PASSWORD='{{ LDAP.BIND_CREDENTIAL }}'
|
|
LDAP_PROVIDER_DEFAULT_ROLES=ROLE_USER
|
|
LDAP_PROVIDER_UID_KEY='{{ LDAP.USER.ATTRIBUTES.ID }}'
|
|
LDAP_PROVIDER_FILTER='{{ LDAP.USER.ATTRIBUTES.ID }}={username}'
|
|
|
|
# Debug
|
|
LDAP_CONNECTION_OPTION_DEBUG_LEVEL="{{ MODE_DEBUG | bool | ternary(7, 0) }}"
|
|
|
|
# ---- Common (for your tooling / consistency) ----
|
|
LDAP_HOST={{ LDAP.SERVER.DOMAIN }}
|
|
LDAP_PORT={{ LDAP.SERVER.PORT }}
|
|
LDAP_ENCRYPTION={{ (LDAP.SERVER.SECURITY | default('none', true) ) | lower }}
|
|
|
|
# ---- SuiteCRM 8 / Symfony LDAP (per official docs) ----
|
|
#LDAP_CONNECTION_STRING=
|
|
LDAP_PROTOCOL_VERSION=3
|
|
LDAP_REFERRALS=false
|
|
|
|
# Base DN under which users are searched
|
|
LDAP_DN_STRING="{{ LDAP.DN.OU.USERS }}"
|
|
|
|
# Search filter with {username} placeholder
|
|
LDAP_QUERY_STRING="{{ LDAP.USER.ATTRIBUTES.ID }}={username}"
|
|
|
|
# Bind DN used to perform the search
|
|
LDAP_SEARCH_DN="{{ LDAP.DN.ADMINISTRATOR.DATA }}"
|
|
LDAP_SEARCH_PASSWORD="{{ LDAP.BIND_CREDENTIAL }}"
|
|
|
|
{% else %}
|
|
AUTH_TYPE=native
|
|
{% endif %}
|
|
|
|
# ------------------------------------------------
|
|
# Maintenance mode toggle
|
|
# ------------------------------------------------
|
|
SUITECRM_MAINTENANCE={{ SUITECRM_INIT_MAINTENANCE_MODE | lower }}
|
|
|
|
NODE_OPTIONS=--max-old-space-size={{ SUITECRM_MAX_OLD_SPACE_SIZE }}
|