Konfigurationsfilen
All konfiguration görs i en YAML-fil, eurion-config.yml. Mallen eurion-config.example.yml följer med kitet. Den här sidan går igenom mallen avsnitt för avsnitt.
Kolumnen Standard anger vad som gäller om nyckeln saknas i din fil. Mallen har ibland ett annat värde ifyllt; det står i kolumnen I mallen när det skiljer sig.
Nycklar som inte används i 1.6.4
Mallen innehåller några nycklar som installationen i version 1.6.4 inte läser. De är markerade med används inte nedan. Att ändra dem har ingen effekt.
Deployment
| Nyckel | Standard | Vad den gör |
|---|---|---|
deploy_mode | docker | Installationssätt. Använd docker. Övriga värden (kubernetes, airgapped) beskrivs inte i den här dokumentationen. |
eurion_version | latest | Versionen som installeras. Måste vara versionsnumret i installationsfilen, till exempel "1.6.4". Uppdateringar skriver in den nya versionen själva. |
organization
| Nyckel | Standard | Vad den gör |
|---|---|---|
organization.name | Eurion | Organisationens namn. Den första organisationen skapas med det här namnet. |
organization.domain | localhost | Er domän. Alla adresser byggs av den: app.<domän>, api.<domän> osv. |
organization.admin_email | admin@<domän> | E-post för det första administratörskontot (superadministratör). Används också som avsändare för Let's Encrypt och som mottagare av larm om inget annat anges. |
organization.country_code | SE | Landskod (ISO 3166-1 alpha-2). |
server
| Nyckel | Standard | Vad den gör |
|---|---|---|
server.host | 127.0.0.1 | Serverns egen IP-adress (den privata om servern står bakom NAT). TURN-servern reläar trafik via den. Ange en IP-adress, inte ett värdnamn. |
server.public_ip | samma som server.host | Den publika IP-adressen. Mötesservern och TURN-servern annonserar den till klienterna. |
server.private_ip | – | Används inte. Den privata adressen tas från server.host. |
server.ssh_user, ssh_port, ssh_key, sudo | – | Används inte. Installationen körs lokalt på servern. |
routing
| Nyckel | Standard | Vad den gör |
|---|---|---|
routing | multi | multi: ett namn per del (app., api., admin., meet., office., turn. under er domän). single: allt på namnet i hostname. |
hostname | – | Bara med routing: single. Det enda namnet, till exempel eurion.example.se. Appen nås på /, API:t på /api och /v1, adminportalen på /admin, dokumentredigering på /office, Grafana på /grafana och TURN på samma namn, port 3478. |
mail.hostname | – | Bara med routing: single och features.mail. E-postserverns eget namn, till exempel mail.example.se. Webbmejlen (mail.webmail) finns inte med ett namn. |
subdomains
Gäller bara routing: multi.
| Nyckel | Standard | Vad den gör |
|---|---|---|
subdomains.app | app | Appens namn: app.<domän>. |
subdomains.api | api | API:ts namn. |
subdomains.admin | admin | Adminportalens namn. |
subdomains.meet | meet | Mötesnamnet. |
subdomains.mail | – | Används inte. |
subdomains.office | office | Finns inte i mallen. Namnet för dokumentredigering. |
subdomains.grafana | grafana | Finns inte i mallen. Används bara med monitoring.grafana_public: true. |
WARNING
Behåll app, api och admin. Adminportalen och inloggningen förutsätter de namnen.
tls
| Nyckel | Standard | I mallen | Vad den gör |
|---|---|---|---|
tls.method | selfsigned | letsencrypt | letsencrypt: Traefik hämtar och förnyar certifikat automatiskt (HTTP-validering på port 80). selfsigned: ett självsignerat certifikat skapas, och webbläsarna varnar. |
tls.acme_email | organization.admin_email | Kontaktadress till Let's Encrypt. | |
tls.resolver | letsencrypt | Namnet på Traefiks certifikatlösare. Ändra inte. | |
tls.cert_path, tls.key_path | – | Används inte. Egna certifikat (method: custom) går inte att ange via konfigurationsfilen i 1.6.4. |
Glöm inte tls.method
Saknas nyckeln blir certifikatet självsignerat. Använd letsencrypt för en riktig installation.
features
| Nyckel | Standard | I mallen | Vad den gör |
|---|---|---|---|
features.video | true | Ljud- och videosamtal (mötesserver och TURN-server). Kräver turn.<domän> och portarna för samtal. | |
features.ai | false | true | AI-mötesprotokoll och sammanfattningar med en lokal språkmodell (Ollama). Kräver mycket RAM, se krav. |
features.transcription | false | Transkribering av samtal (Whisper). | |
features.bridge | false | Startar bryggtjänsten mot Microsoft 365/Teams. Beskrivs inte i den här dokumentationen. | |
features.search | true | Fritextsökning (Meilisearch). | |
features.monitoring | true | Prometheus, Grafana och Loki, se Övervakning. | |
features.mail | false | Integrerad e-postserver. Beskrivs inte i den här dokumentationen; kontakta support innan du slår på den. | |
features.coturn | – | true | Används inte. TURN-servern följer features.video. |
features.virus_scan | true | ClamAV söker igenom varje uppladdad fil (cirka 1,5 GB RAM). Avstängd: filer lämnas ut utan virussökning. | |
features.office | false | Redigera Office-dokument i webbläsaren (Collabora, 1–2 GB RAM). Kräver office.<domän>. |
sizing
| Nyckel | Standard | Vad den gör |
|---|---|---|
sizing.profile | – | Används inte. Värdena nedan gäller oavsett profil. |
sizing.pg_shared_buffers | 256MB | PostgreSQL shared_buffers. |
sizing.pg_max_connections | 200 | PostgreSQL max_connections. |
sizing.pg_work_mem | 16MB | PostgreSQL work_mem. |
sizing.pg_effective_cache_size | 1GB | Finns inte i mallen. PostgreSQL effective_cache_size. |
sizing.redis_maxmemory | 128mb | Redis minnesgräns. |
sizing.kafka_heap | 256m | Kafkas Java-heap. |
sizing.pgbouncer_pool_size | 20 | Reservvärde för database.pool_size. |
sizing.pgbouncer_max_clients | 500 | Reservvärde för database.max_clients. |
Mallens utkommenterade exempel (512MB, 32MB, 256mb, 512m) passar en server med 16 GB RAM.
Valfri finjustering
De här avsnitten är utkommenterade i mallen. Allt har fungerande standardvärden.
cors
| Nyckel | Standard | Vad den gör |
|---|---|---|
cors.extra_origins | [] | Fler ursprung som får anropa API:t, utöver https://app., https://admin. och https://meet.<domän>. Desktopappen behöver http://tauri.localhost och https://tauri.localhost. |
storage
| Nyckel | Standard | Vad den gör |
|---|---|---|
storage.s3_region | eu-west-1 | Regionnamnet som tjänsterna anger mot den lokala MinIO-lagringen. |
storage.preview_bucket | eurion-previews | Bucket för förhandsvisningar av dokument. |
identity
| Nyckel | Standard | Vad den gör |
|---|---|---|
identity.registration_open | false | true låter vem som helst skapa ett konto i appen. |
identity.registration_allowed_domains | [] | E-postdomäner som får skapa konton själva, till exempel ["example.se"]. Är listan ifylld gäller den även när registration_open är false. |
identity.jwt_access_expiry | 15m | Hur länge en åtkomsttoken gäller. |
identity.jwt_refresh_expiry | 7d | Hur länge en inloggning kan förnyas utan att logga in igen. |
ai
Gäller när features.ai är på.
| Nyckel | Standard | Vad den gör |
|---|---|---|
ai.ollama | container | container: Ollama körs i en container. host: Ollama är installerad på servern (port 11434). En URL: Ollama på en annan maskin, till exempel http://10.0.0.5:11434. |
ai.models | ["mistral:7b-instruct", "nomic-embed-text"] | Modeller som hämtas efter installationen (bara med ollama: container). |
ai.model | mistral:7b-instruct | Modellen för sammanfattningar. |
ai.minutes_model | tomt | En större modell bara för mötesprotokoll, till exempel mistral-small3.2. Tomt: ai.model används. Lägg den också i ai.models. |
ai.num_ctx | 8192 | Kontextlängd för modellen. |
transcription
Gäller när features.transcription är på.
| Nyckel | Standard | Vad den gör |
|---|---|---|
transcription.whisper | container | container, host (Whisper-server på servern, port 9300) eller en URL. |
transcription.model | ggml-small.bin | Modellfil i /opt/eurion/data/whisper-models. |
transcription.model_url | Hugging Face-adressen till ggml-small.bin | Var modellen hämtas om filen saknas. |
transcription.vad_model, vad_model_url | tomt | Valfri modell för röstaktivitet, som tar bort tystnad före transkriberingen. |
transcription.threads | 4 | CPU-trådar för Whisper. |
transcription.language | auto | Språk, till exempel sv eller en. auto gissar. |
database
| Nyckel | Standard | Vad den gör |
|---|---|---|
database.pgbouncer | false | Lägger PgBouncer (anslutningspool) framför PostgreSQL för alla tjänster utom gatewayen. Rekommenderas från cirka 150 användare. |
database.pool_size | 20 | PgBouncers poolstorlek. |
database.max_clients | 500 | Högsta antal klientanslutningar till PgBouncer. |
database.max_db_connections | 50 | Högsta antal anslutningar från PgBouncer till PostgreSQL. |
database.pool | {} | Anslutningspool per tjänst, till exempel { messaging-service: { max: 20, min: 4 } }. |
database.postgres_settings | {} | Extra PostgreSQL-inställningar, till exempel { statement_timeout: 30000 }. |
database.shm_size | tomt | Delat minne för PostgreSQL-containern, till exempel 512mb. |
resources
Minnes- och CPU-gräns per container, till exempel:
resources:
gateway: { memory: 2g, cpus: 4 }
collabora: { memory: 8g, cpus: 8 }
ollama: { memory: 48g, cpus: 16 }Namnen är tjänsternas namn: gateway, identity-service, messaging-service och de andra tjänsterna, samt postgres, redis, kafka, pgbouncer, gotenberg, ollama, whisper, collabora och clamav. Collabora och ClamAV har en gräns på 4 GB som standard. Utan gränser kan en enskild container ta allt minne. Larmet för högt minne gäller bara containrar som har en gräns.
service_env
Extra miljövariabler (inte hemliga) per tjänst. De vinner över kitets egna värden. Använd bara om Eurions support ber dig.
service_env:
gateway: { CLUSTER_WORKERS: "4" }mail
Gäller bara features.mail, som inte beskrivs här (impersonator_user, webmail, mailgun_inbound, mailgun, timezone).
monitoring
Gäller när features.monitoring är på. Se Övervakning och larm.
| Nyckel | Standard | Vad den gör |
|---|---|---|
monitoring.alerting | true | Alertmanager, exporters, hälsokontroller och larmregler. |
monitoring.alert_email | organization.admin_email | Vart larmen skickas. Kräver att smtp är ifyllt. |
monitoring.grafana_public | false | true: Grafana även på grafana.<domän>. Grafana finns alltid på admin.<domän>/grafana. |
credentials
Används inte. I 1.6.4 genereras alla lösenord och nycklar alltid av gen-config.py och sparas i /opt/eurion/deploy/generated/group_vars/secrets.yml (läsbar bara för root). Det gäller även initial_admin_password. Värden du skriver här ignoreras.
Lösenorden behålls när skriptet körs igen och vid uppdateringar. Hämta ett lösenord så här:
sudo grep -E '^(initial_admin_password|grafana_password):' /opt/eurion/deploy/generated/group_vars/secrets.ymlsmtp
Utgående e-post för inbjudningar, lösenordsåterställning, kalenderinbjudningar, aviseringar och larm. Se Utgående e-post.
| Nyckel | Standard | Vad den gör |
|---|---|---|
smtp.host | tomt | SMTP-server. Tomt: ingen e-post skickas. |
smtp.port | 587 | Port. |
smtp.secure | false | Finns inte i mallen. false: STARTTLS (port 587). true: TLS direkt (port 465). |
smtp.user | tomt | Användarnamn. |
smtp.password | tomt | Lösenord. Sparas i secrets.yml; tar du bort det ur konfigurationsfilen behålls det sparade. |
smtp.from | tomt | Avsändare, till exempel Eurion <no-reply@example.se>. Fyll alltid i. |
updates
Se Uppdateringar.
| Nyckel | Standard | Vad den gör |
|---|---|---|
updates.channel_url | https://updates.eurion.se/stable/ | Var servern letar efter signerade versioner. "": servern är offline och uppdateringar laddas upp som fil. |
updates.auto_check | true | Leta efter nya versioner automatiskt. |
updates.check_interval_hours | 24 | Hur ofta, i timmar. |
backup
Används inte i 1.6.4: enabled, schedule, retention_days, s3_upload, s3_bucket och s3_endpoint. Säkerhetskopior tas alltid varje natt kl. 02.00 och sparas i 30 dagar, se Säkerhetskopiering.
kubernetes
Gäller bara deploy_mode: kubernetes, som inte beskrivs i den här dokumentationen.
Ändra konfigurationen efter installationen
Efter installationen är det kopian i generated/ som gäller. Den används också vid varje uppdatering.
Redigera filen:
bashsudo nano /opt/eurion/deploy/generated/eurion-config.ymlGenerera om inställningarna (befintliga lösenord behålls):
bashcd /opt/eurion/deploy sudo python3 scripts/gen-config.py generated/eurion-config.yml generatedKör kitet igen:
bashsudo ansible-playbook -i generated/inventory/hosts.yml ansible/site.yml \ -e @generated/group_vars/all.yml -e @generated/group_vars/secrets.yml
Containrar vars inställningar ändrats startas om. Räkna med en kort avbrottstid.
Slå på en funktion vid nästa uppdatering
Ändrar du bara generated/eurion-config.yml och inte kör steg 2–3, slår ändringen igenom vid nästa uppdatering.