Palvelimen konfigurointi¶
Oletusarvoista Docker-kuvaa käyttäen kaikki tarvittava konfigurointi voidaan tehdä selaimesta. Kuitenkin, käyttöönotosta riippuen, voi olla tarpeen mukauttaa palvelimen konfigurointia.
Tällä sivulla luetellaan kaikki menetelmät konfiguroinnin muuttamiseen ja kaikki olemassa olevat konfigurointivaihtoehdot.
Konfigurointitiedosto vs. ympäristömuuttujat¶
Asetusten osalta voit käyttää joko konfigurointitiedostoa tai ympäristömuuttujia.
Kun käytät Docker Compose -pohjaista asetusta, voit sisällyttää konfigurointitiedoston lisäämällä seuraavan luettelokohdan volumes:-avaimen alle grampsweb:-lohkoon:
- /path/to/config.cfg:/app/config/config.cfg
/path/to/config.cfg on polku konfigurointitiedostoon palvelimen tiedostojärjestelmässä (oikealla puolella viitataan polkuun säilössä, eikä sitä saa muuttaa).
Kun käytetään ympäristömuuttujia,
- etuliite jokaiselle asetuksen nimelle on
GRAMPSWEB_saadaksesi ympäristömuuttujan nimen - Käytä kaksoisalaviivoja sisäkkäisille sanakirja-asetuksille, esim.
GRAMPSWEB_THUMBNAIL_CACHE_CONFIG__CACHE_DEFAULT_TIMEOUTasettaa arvonTHUMBNAIL_CACHE_CONFIG['CACHE_DEFAULT_TIMEOUT']konfigurointivaihtoehdolle
Huomaa, että ympäristön kautta asetetut konfigurointivaihtoehdot ovat etusijalla konfigurointitiedostossa oleviin verrattuna. Jos molemmat ovat läsnä, ympäristömuuttuja "voittaa".
Olemassa olevat konfigurointiasetukset¶
Seuraavat konfigurointivaihtoehdot ovat olemassa.
Pakolliset asetukset¶
| Avain | Kuvaus |
|---|---|
TREE |
Käytettävän sukupuun tietokannan nimi. Näytä käytettävissä olevat puut komennolla gramps -l. Jos puuta tällä nimellä ei ole, uusi tyhjää puu luodaan. |
SECRET_KEY |
Salainen avain Flaskille. Salaisuutta ei saa jakaa julkisesti. Sen muuttaminen tekee kaikista käyttöoikeustunnuksista voimassa olevia. |
USER_DB_URI |
Käyttäjätietokannan tietokanta-URL. Mikä tahansa SQLAlchemy-yhteensopiva URL on sallittu. |
Info
Voit luoda turvallisen salaisen avaimen esim. komennolla
python3 -c "import secrets;print(secrets.token_urlsafe(32))"
Valinnaiset asetukset¶
| Avain | Kuvaus |
|---|---|
MEDIA_BASE_DIR |
Polku, jota käytetään media-tiedostojen perushakemistona, ohittaen Grampsissa asetetun media-perushakemiston. Kun käytetään S3, sen on oltava muotoa s3://<bucket_name> |
TREE_ID |
Sukupuun tietokannan hakemiston nimi, jota käytetään yksittäisen puun tilassa (kun TREE ei ole asetettu MULTI). Kun asetettu, palvelin tunnistaa puun sen hakemiston nimen perusteella sen näyttönimen sijaan, mikä on kestävämpää nimimuutoksille. Pakollinen, jos haluat nimetä puun uudelleen API:n kautta. Hakemiston nimen voi löytää komennolla GET /api/trees/- (kenttä id). |
SEARCH_INDEX_DB_URI |
Hakemiston tietokannan URL. Vain sqlite tai postgresql ovat sallittuja taustajärjestelmiä. Oletusarvoisesti sqlite:///indexdir/search_index.db, luoden SQLite-tiedoston hakemistoon indexdir suhteessa polkuun, josta skripti ajetaan. |
STATIC_PATH |
Polku, josta staattisia tiedostoja tarjoillaan (esim. staattinen verkkosivuston etuosa) |
BASE_URL |
Perus-URL, josta API on saavutettavissa (esim. https://mygramps.mydomain.com/). Tämä on tarpeen esim. oikeiden salasanan nollauslinkkien rakentamiseksi |
CORS_ORIGINS |
Alkuperät, joista CORS-pyynnöt ovat sallittuja. Oletusarvoisesti kaikki on kielletty. Käytä "*" sallimaan pyynnöt mistä tahansa verkkotunnuksesta. |
EMAIL_HOST |
SMTP-palvelimen isäntä (esim. salasanan nollaus-sähköpostien lähettämiseen) |
EMAIL_PORT |
SMTP-palvelimen portti. oletusarvoisesti 465 |
EMAIL_HOST_USER |
SMTP-palvelimen käyttäjänimi |
EMAIL_HOST_PASSWORD |
SMTP-palvelimen salasana |
EMAIL_USE_TLS |
Vanha (käytä EMAIL_USE_SSL tai EMAIL_USE_STARTTLS sen sijaan). Boolean, käytetäänkö TLS:ää sähköpostien lähettämiseen. Oletusarvoisesti True. Kun käytetään STARTTLS:ää, aseta tämä False ja käytä porttia, joka ei ole 25. |
EMAIL_USE_SSL |
Boolean, käytetäänkö implisiittistä SSL/TLS:ää SMTP:ssä (v3.6.0+). Oletusarvoisesti True, jos EMAIL_USE_TLS ei ole nimenomaan asetettu. Käytetään tyypillisesti portilla 465. |
EMAIL_USE_STARTTLS |
Boolean, käytetäänkö eksplisiittistä STARTTLS:ää SMTP:ssä (v3.6.0+). Oletusarvoisesti False. Käytetään tyypillisesti portilla 587 tai 25. |
DEFAULT_FROM_EMAIL |
"From" -osoite automatisoiduille sähköposteille |
THUMBNAIL_CACHE_CONFIG |
Sanakirja, jossa on asetuksia pikkukuvien välimuistille. Katso Flask-Caching mahdollisista asetuksista. |
REQUEST_CACHE_CONFIG |
Sanakirja, jossa on asetuksia pyyntövälimuistille. Katso Flask-Caching mahdollisista asetuksista. |
PERSISTENT_CACHE_CONFIG |
Sanakirja, jossa on asetuksia pysyvälle välimuistille, käytetään esim. telemetriaan. Katso Flask-Caching mahdollisista asetuksista. |
CELERY_CONFIG |
Asetukset Celery-taustatehtäväjonolle. Katso Celery mahdollisista asetuksista. |
REPORT_DIR |
Väliaikainen hakemisto, johon Gramps-raporttien suorittamisen tulokset tallennetaan |
EXPORT_DIR |
Väliaikainen hakemisto, johon Gramps-tietokannan vientitulokset tallennetaan |
REGISTRATION_DISABLED |
Jos True, estä uusi käyttäjärekisteröinti (oletusarvo False) |
DISABLE_TELEMETRY |
Jos True, poista käytöstä tilastotietojen telemetria (oletusarvo False). Katso telemetria lisätietoja varten. |
PILLOW_MAX_IMAGE_PIXELS |
Asettaa PIL.Image.MAX_IMAGE_PIXELS -parametrin, joka osoittaa, kuinka monta pikseliä käsitelty kuva voi sisältää. Katso dokumentaatio lisätietoja varten. |
MAX_THUMBNAIL_FILE_BYTES |
Asettaa kovaksi maksimi tiedostokoon pikkukuville. Oletusarvoisesti 50 * 1024 * 1024 (50 MB). Sen nostaminen voi suuresti lisätä muistin käyttöä ja voi johtaa muistivaurioihin tai tietojen menetykseen, jos suuria tiedostoja purkautuu muistiin. |
Info
Kun käytetään ympäristömuuttujia konfiguroinnissa, boolean-vaihtoehtojen, kuten EMAIL_USE_TLS, on oltava joko merkkijono true tai false (kokoherkkä!).
Asetukset vain PostgreSQL-taustatietokannalle¶
Tämä on tarpeen, jos olet konfiguroinut Gramps-tietokannan toimimaan PostgreSQL-lisäosan kanssa.
| Avain | Kuvaus |
|---|---|
POSTGRES_USER |
Tietokantayhteyden käyttäjänimi |
POSTGRES_PASSWORD |
Tietokantakäyttäjän salasana |
Asetukset, jotka liittyvät useiden puiden isännöimiseen¶
Seuraavat asetukset ovat relevantteja, kun isännöidään useita puita.
| Avain | Kuvaus |
|---|---|
MEDIA_PREFIX_TREE |
Boolean, käytetäänkö erillistä alihakemistoa jokaisen puun media-tiedostoille. Oletusarvoisesti False, mutta suositellaan vahvasti käyttämään True usean puun asetuksessa |
NEW_DB_BACKEND |
Tietokantatausta, jota käytetään uusille sukupuulle. Sen on oltava yksi sqlite, postgresql tai sharedpostgresql. Oletusarvoisesti sqlite. |
POSTGRES_HOST |
PostgreSQL-palvelimen isäntänimi, jota käytetään uusien puiden luomiseen, kun käytetään usean puun asetusta SharedPostgreSQL-taustalla |
POSTGRES_PORT |
PostgreSQL-palvelimen portti, jota käytetään uusien puiden luomiseen, kun käytetään usean puun asetusta SharedPostgreSQL-taustalla |
Asetukset OIDC-todennusta varten¶
Nämä asetukset ovat tarpeen, jos haluat käyttää OpenID Connect (OIDC) -todennusta ulkoisten tarjoajien kanssa. Yksityiskohtaisia asennusohjeita ja esimerkkejä varten katso OIDC-todennus.
| Avain | Kuvaus |
|---|---|
OIDC_ENABLED |
Boolean, käytetäänkö OIDC-todennusta. Oletusarvoisesti False. |
OIDC_ISSUER |
OIDC-palveluntarjoajan myöntäjän URL (muille OIDC-palveluntarjoajille) |
OIDC_CLIENT_ID |
OAuth-asiakastunnus (muille OIDC-palveluntarjoajille) |
OIDC_CLIENT_SECRET |
OAuth-asiakassalaisuus (muille OIDC-palveluntarjoajille) |
OIDC_NAME |
Mukautettu näyttönimi tarjoajalle. Oletusarvoisesti "OIDC" |
OIDC_SCOPES |
OAuth-alueet. Oletusarvoisesti "openid email profile" |
OIDC_USERNAME_CLAIM |
Vaatimus, jota käytetään käyttäjänimenä. Oletusarvoisesti "preferred_username" |
OIDC_OPENID_CONFIG_URL |
Valinnainen: URL OpenID Connect -konfigurointipisteeseen (jos ei käytetä standardia /.well-known/openid-configuration) |
OIDC_DISABLE_LOCAL_AUTH |
Boolean, estetäänkö paikallinen käyttäjänimi/salasana-todennus. Oletusarvoisesti False |
OIDC_AUTO_REDIRECT |
Boolean, ohjataanko automaattisesti OIDC:hen, kun vain yksi tarjoaja on konfiguroitu. Oletusarvoisesti False |
Sisäänrakennetut OIDC-palveluntarjoajat¶
Sisäänrakennettuja tarjoajia (Google, Microsoft, GitHub) varten käytä näitä asetuksia:
| Avain | Kuvaus |
|---|---|
OIDC_GOOGLE_CLIENT_ID |
Asiakastunnus Google OAuth:lle |
OIDC_GOOGLE_CLIENT_SECRET |
Asiakassalaisuus Google OAuth:lle |
OIDC_MICROSOFT_CLIENT_ID |
Asiakastunnus Microsoft OAuth:lle |
OIDC_MICROSOFT_CLIENT_SECRET |
Asiakassalaisuus Microsoft OAuth:lle |
OIDC_GITHUB_CLIENT_ID |
Asiakastunnus GitHub OAuth:lle |
OIDC_GITHUB_CLIENT_SECRET |
Asiakassalaisuus GitHub OAuth:lle |
OIDC-roolien kartoitus¶
Nämä asetukset mahdollistavat OIDC-ryhmien/roolien kartoittamisen identiteettipalveluntarjoajaltasi Gramps Web -käyttäjärooleihin:
| Avain | Kuvaus |
|---|---|
OIDC_ROLE_CLAIM |
Vaatimuksen nimi OIDC-tunnuksessa, joka sisältää käyttäjän ryhmät/roolit. Oletusarvoisesti "groups" |
OIDC_GROUP_ADMIN |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Admin" -roolia |
OIDC_GROUP_OWNER |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Owner" -roolia |
OIDC_GROUP_EDITOR |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Editor" -roolia |
OIDC_GROUP_CONTRIBUTOR |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Contributor" -roolia |
OIDC_GROUP_MEMBER |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Member" -roolia |
OIDC_GROUP_GUEST |
Ryhmän/roolin nimi OIDC-palveluntarjoajaltasi, joka vastaa Grampsin "Guest" -roolia |
Asetukset vain AI-ominaisuuksia varten¶
Nämä asetukset ovat tarpeen, jos haluat käyttää AI-pohjaisia ominaisuuksia, kuten keskustelua tai semanttista hakua.
| Avain | Kuvaus |
|---|---|
LLM_BASE_URL |
Perus-URL OpenAI-yhteensopivalle keskustelu-API:lle. Oletusarvoisesti None, joka käyttää OpenAI API:ta. |
LLM_MODEL |
Malli, jota käytetään OpenAI-yhteensopivassa keskustelu-API:ssa. Jos ei asetettu (oletusarvo), keskustelu on pois käytöstä. Versiosta v3.6.0 alkaen AI-avustaja käyttää Pydantic AI:ta työkalukutsukyvykkyyksillä. |
VECTOR_EMBEDDING_MODEL |
Sentence Transformers -malli, jota käytetään semanttisen haun vektoriupotuksiin. Jos ei asetettu (oletusarvo), semanttinen haku ja keskustelu ovat pois käytöstä. |
LLM_MAX_CONTEXT_LENGTH |
Merkkiraja sukupuun kontekstille, joka annetaan LLM:lle. Oletusarvoisesti 50000. |
LLM_SYSTEM_PROMPT |
Mukautettu järjestelmäkehotus LLM-keskusteluavustajalle (v3.6.0+). Jos ei asetettu, käytetään oletusgenealogia-optimoitua kehotusta. |
Esimerkkikonfigurointitiedosto¶
Minimalistinen konfigurointitiedosto tuotantoa varten voisi näyttää tältä: ```python TREE="My Family Tree" BASE_URL="https://mytree.example.com" SECRET_KEY="..." # salainen avain USER_DB_URI="sqlite:////path/to/users.sqlite" EMAIL_HOST="mail.example.com" EMAIL_PORT=465 EMAIL_USE_SSL=True # Käytä implisiittistä SSL:ää portilla 465 EMAIL_HOST_USER="gramps@example.com" EMAIL_HOST_PASSWORD="..." # SMTP-salasana DEFAULT_FROM_EMAIL="gramps@example.com"