‘S e seo am bathar slàn air aon aoigh: an LMS, obair a’ chùl-raoin, seirbheisean fìor-ùine is deasachaidh cho-obrachail, agus gach seirbheis roghainneil a tha air cùl pròifil. Tha an dealbhadh ann an earrann 2 de docs/architecture/23-ops.md.
Targaidean eile: chan eil Vercel agus Cloudflare Workers a’ ruith ach an t-sreath-lìn. Tha ùrachaidhean ann an upgrade.md, agus cùl-taicean is an deuchainn ath-nuadhachaidh ann an backup-restore.md.
Na tha a dhìth ort
- Docker Engine 27 no nas ùire leis a’ phlugan Compose 2.30 no nas ùire.
- 4 coirean CPU agus 8 GB de chuimhne airson a’ chàirn bhunaiteach; 8 coirean agus 16 GB le
--profile full(tha mu 1.5 GB de shoidhnichean aig ClamAV leis fhèin). - Ainm DNS airson an t-sreath-lìn agus dàrna tè airson susbaint neo-earbsach. Feumaidh iad a bhith nan diofar aoighean: ruithidh pasganan SCORM agus HTML a chaidh a luchdadh suas air tùs an t-susbaint gus nach urrainn dhaibh briosgaidean an LMS a leughadh.
- Airson deuchainn ionadail, tha
lvh.meagus*.localhosta’ fuasgladh gu 127.0.0.1, mar a thadocker/.env.examplea’ cleachdadh. Tha seirbheisproxya’ chàirn a’ frithealadh an dà chuid thairis air https le ùghdarras teisteanais ionadail, agus mar sin cha tèid dad eile a stàladh (faic “TLS”). - Feumaidh puirt 80 agus 443 a bhith saor air an aoigh (
QUIRE_PROXY_HTTP_PORTagusQUIRE_PROXY_HTTPS_PORTgan gluasad).
A’ chiad ruith
QUIRE_APP_ORIGIN=https://learn.example.org \
QUIRE_CONTENT_ORIGIN=https://content.example-content.org \
QUIRE_SETUP_ADMIN_EMAIL=you@example.org \
docker/scripts/init-env.sh
docker compose -f docker/compose.yaml up -d --build
docker compose -f docker/compose.yaml logs initSgrìobhaidh docker/scripts/init-env.sh docker/.env bho docker/.env.example, leis gach dìomhaireachd air a gineadh (faclan-faire stòr-dàta, iuchraichean-soidhnidh is maighstir, paidhir iuchrach cur-air-bhog an t-susbaint), agus an iuchair-soidhnidh puing-sgrùdaidh aig docker/secrets/audit-signing-key.pem, a chuireas Compose suas dhan luchd-obrach mar dhìomhaireachd. Chan fheum e ach sh, awk agus openssl, agus diùltas e docker/.env a tha ann mar-thà a sgrìobhadh thairis air. Dèan lethbhreac dhen dà fhaidhle far an aoigh: às aonais QUIRE_MASTER_KEY chan urrainn do stòr-dàta ath-nuadhaichte na teisteanasan stòraichte aige a dhì-chrioptachadh. Gus am faidhle a lìonadh le làimh, ruith cp docker/.env.example docker/.env; tha am faidhle ag innse mar a ghineas tu gach dìomhaireachd.
Feumaidh an dà thùs a bhith https: diùltas seirbheis an t-susbaint http lom ann an riochdachadh, agus chan fhaod an aon àrainn chlàraichte a bhith aca. Bidh seirbheis proxy a’ crìochnachadh TLS airson an dà chuid (faic “TLS”); diùltas init-env.sh tùs http://.
Tòisichidh an càrn ann an òrdugh suidhichte, agus feithidh gach ceum gus am bi am fear roimhe deiseil:
- Bidh
postgresfallain. Aig a’ chiad tòiseachadh a-riamh suidhichidh an sgriobt tòiseachaidh aige (docker/postgres/init/90-passwords.sh) faclan-faire nan ceithir dreuchdan. - Cuiridh
migrategach imrich an sàs agus tòisichidh e ciudha nan obraichean ann an stòr-dàta smachd agus anns gach stòr-dàta neach-gabhail sònraichte, nì e cinnteach gu bheil iad uile ag aontachadh agus an uair sin sguiridh e (docs/ops/upgrade.md). Ruithidh imrichean aig gach tòiseachadh agus tha iad idempotent, agus mar sin ’s e ìomhaigh ùr agus ath-thòiseachadh a th’ ann an ùrachadh. - Clàraidh
init(apps/web/src/first-run.ts) stòr-dàta na h-aplacaid foQUIRE_DATABASE_IDagus, ma thaQUIRE_SETUP_ADMIN_EMAILsuidhichte, cruthaichidh e a’ chiad bhuidheann agus an rianaire aice. Clò-bhualar seòladh clàraidh a-steach agus facal-faire gineadh aon turas ann andocker compose logs init. - Tòisichidh
web,content,worker,scheduler,collabaguscentrifugo. - Tòisichidh
proxynuair a bhioswebaguscontentfallain.
Fosgail https://demo. agus an uair sin àrainn na h-aplacaid agad (tha an log init a’ clò-bhualadh dearbh sheòladh a’ chlàraidh a-steach) agus clàraich a-steach. Air stàladh ionadail, earb ris an ùghdarras teisteanais aig an neach-ionaid an toiseach (faic “TLS”). Atharraich am facal-faire gineadh aig /account/security.
Diùltas pròiseas a thòisicheas gun dìomhaireachd riatanach tòiseachadh agus ainmichidh e an roghainn a tha a dhìth san log aige. Cha tòisich dad le rèiteachadh leth-choileanta.
Seirbheisean is pròifilean
| Seirbheis | Pròifil | Na nì i |
|---|---|---|
| postgres | an-còmhnaidh | An stòr-dàta (PostgreSQL 18 le pgvector, air a thogail bho docker/postgres.Dockerfile), le WAL air a thasgadh on chiad tòiseachadh |
| migrate, init | an-còmhnaidh | Aon turas: imrichean, agus an uair sin a’ chiad ruith |
| web | an-còmhnaidh | An LMS, air QUIRE_HTTP_PORT (8080) |
| content | an-còmhnaidh | Tùs airson susbaint neo-earbsach, air QUIRE_CONTENT_PORT (8081) |
| worker | an-còmhnaidh | Obraichean cùl-raoin: post-d, aithisgean, giullachd fhaidhlichean agus webhooks |
| scheduler | an-còmhnaidh | Obraichean ath-chuairteach: clàraichidh e na 64 clàran-ama rè-ruith agus bheir e iad don neach-obrach; aon cheannard aig àm |
| collab | an-còmhnaidh | WebSocket deasachaidh cho-obrachail, air QUIRE_COLLAB_HTTP_PORT (1234) |
| centrifugo | an-còmhnaidh | Craoladh fìor-ùine, air QUIRE_REALTIME_PORT (8000) |
| proxy | an-còmhnaidh | Caddy, an doras TLS aghaidh air puirt 80 agus 443 (faic “TLS”) |
| valkey | cache |
Tasgadan agus crìochan reata |
| clamav | scan |
Sganadh luchdachadh suas airson bathar-bog droch-rùnach |
| gotenberg | preview |
Ro-sheallaidhean Office gu PDF agus toirt theisteanasan gu buil |
| imgproxy | images |
Ìomhaighean ath-mheudachadh is tionndaidh |
| transcoder | video |
Ìomhaigh neach-obrach le ffmpeg fon chead LGPL a-mhàin, airson dreachan bhidio |
| seaweedfs | storage |
Stòradh nithean co-chòrdail ri S3 air an aoigh seo |
| otelcol | observability |
Neach-cruinneachaidh OpenTelemetry |
| mailpit | devmail |
Glacaidh e gach post-d a-mach airson Quire fheuchainn |
| backup | backup |
Cùl-taic bunasach aon-turais; faic backup-restore.md |
| backup-scheduler, backup-offsite | backup |
Cùl-taic bunasach gach QUIRE_BACKUP_INTERVAL_HOURS, lethbhreacan crioptaichte far an aoigh agus deuchainn dearbhaidh gach seachdain |
| h5p | h5p |
Ìomhaigh inneil H5P LTI 1.3 a bheir thu seachad ann an QUIRE_H5P_IMAGE, air QUIRE_H5P_PORT (8090); faic “A’ ceangal solaraiche H5P” |
Tòisichidh --profile full gach seirbheis roghainneil ach backup agus h5p. Tòisich fear le docker compose -f docker/compose.yaml --profile scan up -d. Obraichidh Quire às aonais seirbheis roghainneil agus innsidh e dè tha a dhìth: mura h-eil sganair ann, thèid luchdachadh suas a stòradh gun sganair agus thèid innse dhan rianaire; às aonais Gotenberg, faodar faidhlichean a luchdadh a-nuas seach an ro-shealladh; às aonais transcoder, cluichidh bhidio mar am faidhle tùsail.
Tha gach ìomhaigh treas-phàrtaidh agus na dleastanasan ceadachais aice air an liostadh ann an docker/third-party-containers.yaml.
A’ ceangal solaraiche H5P
Chan eil Quire a’ fighe a-steach no a’ cur inneal-ruith no sidecar H5P air falbh (ADR 0019). Ma chleachdas tu H5P, faigh fo-sgrìobhadh aoigheachd agad fhèin no obraich eisimpleir H5P fèin-aoigheachd air leth bho Quire. Clàraich an solaraiche mar inneal LTI 1.3 taobh a-muigh agus cuir an t-susbaint aige ri cùrsaichean mar ghnìomhan inneil. Bidh Quire ag iomlaid ìrean agus adhartas gnìomh/rangachaidh tro LTI Assignment and Grade Services (AGS). Ma chuireas an solaraiche aithrisean xAPI cuideachd, rèitich sin air leth airson stòr aithrisean xAPI Quire; cha chuir iomlaid ìre/adhartais AGS aithrisean xAPI. Tha ion-phortaidhean Moodle ag aithris gu bheil ceangal inneil LTI a dhìth air gnìomhan H5P. Bidh an solaraiche fhathast an urra ris an inneal-ruith H5P, sgrìobhadh, banca susbaint agus eachdraidh oidhirpean aige fhèin.
Gus eisimpleir fèin-aoigheachd agad fhèin a ruith air an aoigh seo, suidhich QUIRE_H5P_IMAGE dhan ìomhaigh aige agus tòisich pròifil h5p. Foillsichidh Compose e air QUIRE_H5P_PORT (8090) agus cumaidh e dàta san leabhar h5p-data; ’s ann leat fhèin a tha an ìomhaigh agus na dleastanasan a thig na cois.
Roghainnean
Leughaidh gach pròiseas docker/.env. Tha an teamplaid docker/.env.example a’ liostadh gach roghainn agus a luach bunaiteach. Seo na buidhnean:
Seòlaidhean
| Roghainn | Brìgh |
|---|---|
QUIRE_APP_ORIGIN |
Seòladh poblach an LMS, mar https://learn.example.com |
QUIRE_CONTENT_ORIGIN |
Tùs an t-susbaint, air aoigh eile |
QUIRE_PLATFORM_DOMAINS |
Àrainnean nam buidhnean, air an sgaradh le cromagan |
QUIRE_MARKETING_ORIGIN |
Optional. The marketing site, default https://quirelms.com. The only origin the waitlist form (POST /api/waitlist, POST /waitlist) accepts and redirects to. Comma separated; a www. variant is allowed only if listed |
QUIRE_DEPLOY_TARGET |
compose an seo. Faic na stiùiridhean eile airson vercel agus cloudflare |
QUIRE_TRUSTED_PROXY_CIDRS |
Luchd-ionaid a thathar a’ creidsinn an X-Forwarded-For aca |
Dìomhaireachdan
| Roghainn | Brìgh |
|---|---|
QUIRE_SECRET_KEY |
Soidhnichidh e seiseanan is tòcanan. 64 caractar hex |
QUIRE_MASTER_KEY |
Paisgidh e teisteanasan stòraichte, mar dìomhaireachdan SSO is webhook. 32 baidht, base64. Feumaidh an aon luach a bhith aig an t-sreath-lìn agus an neach-obrach. Cuairteachadh: key-rotation.md |
QUIRE_MASTER_KEY_VERSION |
Leubail tionndaidh na h-iuchrach-mhaighstir, v1 mura h-eil e suidhichte. Meudaich e nuair a chuairticheas tu |
QUIRE_MASTER_KEY_RETIRED |
Iuchraichean maighstir nas sine a tha fhathast a dhìth airson na sheulaich iad a leughadh, mar v1=<base64>. Thoir air falbh iad nuair a thig cuairteachadh gu crìch gun luach gun fhuasgladh |
QUIRE_COLLAB_SIGNING_KEY |
Co-roinnte eadar web agus collab gus tòcanan deasachaidh a shoidhneadh |
QUIRE_BACKUP_SIGNING_KEY |
Soidhnichidh e cùl-taicean chùrsaichean (roghainneil) |
Cùm lethbhreac de QUIRE_MASTER_KEY ann an àite eile seach an aoigh seo. Chan urrainn do stòr-dàta ath-nuadhaichte às aonais a theisteanasan a dhì-chrioptachadh.
Stòr-dàta
| Roghainn | Brìgh |
|---|---|
POSTGRES_PASSWORD |
An t-àrd-chleachdaiche, air a chleachdadh leis a’ shoitheach agus cùl-taicean |
QUIRE_DB_APP_PASSWORD, QUIRE_DB_MIGRATOR_PASSWORD, QUIRE_DB_REPORT_PASSWORD, QUIRE_DB_AUDIT_PASSWORD |
Faclan-faire dreuchd, suidhichte aig a’ chiad tòiseachadh |
DATABASE_URL |
Dreuchd na h-aplacaid. Tha tèarainteachd ìre-shreathan a’ buntainn ri gach iarrtas a nì i |
DATABASE_MIGRATOR_URL, QUIRE_MIGRATION_URL |
Dreuchd imrich, airson migrate agus init |
QUIRE_SUPERUSER_URL |
Air a chleachdadh aig a’ chiad ruith a-mhàin |
QUIRE_REPORT_DATABASE_URL |
Dreuchd aithisgean le leughadh a-mhàin, airson aithisgean is an togadair aithisgean |
QUIRE_AUDIT_DATABASE_URL |
Dreuchd sgrùdaidh, airson consol sgrùdaidh agus às-phortadh SIEM |
QUIRE_DATABASE_ID |
UUID sam bith, suidhichte fad beatha an stàlaidh |
Cha chuirear faclan-faire dreuchd an sàs ach nuair a chruthaichear leabhar an stòr-dàta an toiseach. Gus fear atharrachadh nas anmoiche, cleachd ALTER ROLE agus ùraich an URL fhreagarrach an uair sin.
Thèid QUIRE_REPORT_DATABASE_URL a chleachdadh airson an stòr-dàta fiosaigeach a tha DATABASE_URL a’ rèiteachadh. Airson stòr-dàta fiosaigeach clàraichte sam bith eile, suidhich an URL ceangail quire_report aige fhèin ann an àrainneachdan web agus worker, agus cuir ainm a’ chaochladair ann an raon Caochladair àrainneachd aithisgean an stòr-dàta sin mar env:NAME. Feumaidh an t-iomradh sealltainn dhan aon stòr-dàta ri ceangal na h-aplacaid aige, mas fheàrr ri mac-samhail le leughadh a-mhàin. Leanaidh gach uachdar aithisgean an neach-gabhail gu ceangal aithisgean an stòr-dàta aige fhèin: togadair aithisgean agus aithisgean sàbhailte, lìbhrigeadh clàraichte, às-phortadh aithisgean, anailiseachd, log sgrùdaidh, goireasan sgrùdaidh REST agus lorg sgrùdaidh an neach-cuideachaidh. Cha toir gin dhiubh iasad uair sam bith de URL aithisgean stòr-dàta eile. Mura h-eil ceangal aithisgean aig stòr-dàta, ruithidh aithisgean àbhaisteach air a cheangal aplacaid fhèin; thèid anailiseachd agus gach leughadh sgrùdaidh a dhiùltadh leis an adhbhar, oir chan urrainn do dhreuchd na h-aplacaid sreath an sgrùdaidh a leughadh.
Draibhearan
| Roghainn | Luachan san tionndadh seo | Notaichean |
|---|---|---|
QUIRE_STORAGE_DRIVER |
local (bunaiteach), s3 no azure |
Cumaidh local faidhlichean anns an leabhar files. Tha s3 a’ còmhdach AWS S3, R2, eadar-obrachadh GCS agus stòran eile a tha co-chòrdail ri S3, le luchdachadh suas ioma-phàirt a ghabhas ath-thòiseachadh |
QUIRE_REALTIME_DRIVER |
inprocess (bunaiteach), sse, centrifugo no durable_objects |
Tha inprocess freagarrach airson aon soitheach-lìn; cleachd centrifugo no sse ma tha grunnan ann |
QUIRE_CACHE_DRIVER |
memory (bunaiteach), postgres no valkey |
Tha memory gach pròiseas fa leth; cleachd valkey no postgres gus am bi crìochan reata a’ buntainn thar shoithichean |
QUIRE_VIDEO_DRIVER |
ffmpeg (bunaiteach) no progressive_mp4 |
No solaraiche aoigheachd: Cloudflare Stream, Mux no Bunny, leis na h-iuchraichean aca |
QUIRE_IMAGE_DRIVER |
noop (bunaiteach), imgproxy no cloudflare |
Bidh noop a’ frithealadh gach ìomhaigh aig meud tùsail. Feumaidh imgproxy pròifil images agus na roghainnean gu h-ìosal; cleachdaidh cloudflare Cloudflare Images |
QUIRE_MEETING_PROVIDER |
bbb, zoom, teams, meet, jitsi no in_process |
Solaraiche bunaiteach an àrd-ùrlair airson seiseanan beò. Mura h-eil e suidhichte, innsidh seiseanan beò nach eil iad rèitichte gus an ceangail buidheann cunntas fhèin fo Amalachadh, Solaraiche seiseanan beò. Bidh cunntas buidhne fhèin an-còmhnaidh nas làidire na an luach seo. Chan eil roghainnean solaraiche fa leth (BBB_URL agus BBB_SECRET, na caochladairean ZOOM_*, TEAMS_*, GOOGLE_MEET_* agus JITSI_*) air an leughadh ach airson an t-solaraiche a tha ainmichte an seo |
QUIRE_MEETING_REGIONS |
Liosta eu, uk, us le cromagan |
Far a bheil solaraiche bunaiteach an àrd-ùrlair a’ pròiseasadh choinneamhan. Mura h-eil i suidhichte, cha tèid a coimeas ri buidheann a tha ceangailte ri roinn, mar roimhe. Cuiridh cunntas buidhne fhèin na roinnean aige air an duilleag aige |
Thèid luach draibhear nach eil san tionndadh seo a dhiùltadh nuair a thòisicheas an t-sreath-lìn, leis an roghainn air ainmeachadh, seach a chur na àite gu sàmhach leis a’ bhun-roghainn.
Ìomhaighean
Iarraidh duilleagan ìomhaighean aig ceithir meudan suidhichte tro /api/files/{id}/image/{size}; nì seo sgrùdadh air an aon chothrom ris an fhaidhle fhèin agus an uair sin ath-sheòlaidh e dhan t-seirbheis ìomhaighean. Faodaidh gach buidheann QUIRE_IMAGE_SPECS_PER_HOUR (2000 mar bhun-roghainn) paidhrichean ùra de dh’ìomhaigh is meud iarraidh gach uair; chan eil meudan a chaidh a dhèanamh mar-thà san uair sin a’ cunntadh. Cleachd valkey no postgres airson QUIRE_CACHE_DRIVER ma tha barrachd air aon soitheach-lìn ann gus am bi a’ chrìoch coitcheann eatorra.
| Roghainn | Draibhear | Notaichean |
|---|---|---|
IMGPROXY_URL |
imgproxy |
Seòladh a ruigeas brabhsairean imgproxy air, mar https://images.example.org. Foillsichidh pròifil images e air QUIRE_IMAGES_PORT (8082) |
IMGPROXY_KEY, IMGPROXY_SALT |
imgproxy |
Sreangan hex, na h-aon luachan leis an tòisichear imgproxy. Gineadh gach tè le openssl rand -hex 32. Soidhnichidh Quire gach seòladh ìomhaigh leotha, agus mar sin cha toir imgproxy ìomhaigh gu buil mura h-iarr Quire sin |
QUIRE_IMAGE_SOURCE_ORIGIN |
imgproxy le stòradh ionadail |
Càit an fhaigh imgproxy na tùsail. Suidhichidh Compose http://web:3000. Le stòradh s3 no azure gheibh imgproxy bhon bhucaid iad agus cha tèid seo a chleachdadh |
CLOUDFLARE_ACCOUNT_ID, CLOUDFLARE_IMAGES_TOKEN, CLOUDFLARE_IMAGES_ACCOUNT_HASH |
cloudflare |
Tòcan API le cead deasachaidh Images agus hash cunntais bho Images, Developer resources. Cuir tionndaidhean sùbailte air dhan chunntas |
CLOUDFLARE_IMAGES_SIGNING_KEY |
cloudflare |
Roghainneil. Nuair a tha e suidhichte, tha ìomhaighean prìobhaideach agus tha gach seòladh soidhnichte is a’ tighinn gu crìch. Às aonais, tha ìomhaighean poblach aig seòlaidhean a thig à QUIRE_SECRET_KEY nach urrainn do dhuine tomhas |
Cumaidh Cloudflare Images a lethbhreac fhèin de gach ìomhaigh thùsail a bhios e a’ frithealadh. Nuair a sguabar faidhle às, sguabaidh an neach-obrach às an lethbhreac sin ron tùsail.
Ciudha
Cleachdaidh obraichean cùl-raoin pg-boss san aon stòr-dàta Postgres, agus mar sin chan eil seirbheis ciudha ri ruith no rèiteachadh. Thèid obraichean a chur sa chiudha anns an aon ghnothach ris an atharrachadh a dh’adhbhraich iad, agus mar sin chan urrainn do thubaist fear a chall no a chur dà thuras. Is e QUIRE_QUEUE_DRIVER pgboss an seo, a luach bunaiteach; gluaisidh vercel agus cloudflare lìbhrigeadh aotrom brathan is webhook a-mhàin gu ciudha an àrd-ùrlair fhèin. Tha na stiùiridhean Vercel agus Cloudflare a’ mìneachadh nan ciudha sin agus mar a chuireas na sreathan-lìn aca obraichean annta.
Post-d
Suidhich fear dhiubh seo:
QUIRE_EMAIL_PROVIDER_CONFIG: nì JSON ag ainmeachadh solaraiche HTTP agus na teisteanasan aige, mar{"provider":"postmark","token":"..."}. Tha Postmark, Amazon SES, Mailgun, SendGrid agus Resend a’ faighinn taic.QUIRE_SMTP_URL:smtp://user:password@host:587. An targaid seo a-mhàin; bac targaidean gun fhrithealaiche SMTP.
Is e QUIRE_MAIL_FROM an seòladair. Gus Quire fheuchainn, tòisich pròifil devmail, suidhich QUIRE_SMTP_URL=smtp://mailpit:1025 agus leugh post-d aig http://localhost:8025.
Seirbheisean roghainneil
| Roghainn | Le pròifil |
|---|---|
CLAMAV_URL=tcp://clamav:3310 |
scan |
GOTENBERG_URL=http://gotenberg:3000 |
preview |
IMGPROXY_KEY, IMGPROXY_SALT |
images |
VALKEY_URL=redis://valkey:6379 |
cache |
QUIRE_OPENSEARCH_URL no QUIRE_MEILISEARCH_URL |
Lorg air an taobh a-muigh; teacsa slàn Postgres air dhòigh eile |
QUIRE_BREACH_CHECK_PROVIDER=off, QUIRE_BREACH_CHECK_URL |
Sgrùdadh airson facal-faire ann am briseadh. Air mar bhun-roghainn an aghaidh api.pwnedpasswords.com (cha tèid ach ro-leasachan còig caractaran dhen hash); cuiridh off dheth e, agus tha an URL a’ comharrachadh API raoin a tha thu a’ cumail |
Amharcachd
Tha OTEL_EXPORTER_OTLP_ENDPOINT ag ainmeachadh an neach-cruinneachaidh dhan cuir gach pròiseas tracadh is meatraigean; leis a’ phròifil observability ’s e http://otelcol:4318 a th’ ann, agus ann an docker/otel-collector.yaml cuiridh tu às-phortaichear airson do chùl-raon. Ma tha e suidhichte, cuiridh na pròiseasan web, worker, scheduler, content agus collab raointean thairis air OTLP/HTTP (iarrtasan-lìn, gnothaichean stòr-dàta luchd-gabhail, obraichean agus gairmean a-mach) agus meatraigean chun an aon phuing gach mionaid (OTEL_METRICS_EXPORTER=none gan cur dheth). Suidhichidh OTEL_TRACES_SAMPLER_ARG a’ chuibhreann de thracan a thèid a chumail. Thèid logaichean dhan toradh àbhaisteach aig LOG_LEVEL, agus cuiridh Compose mun cuairt orra. Cha bhi dàta pearsanta anns na tracadh.
Trafaig a-mach roinneil (còmhnaidh dàta an EU)
Tha QUIRE_REGION=eu ag ràdh gu bheil an càrn a’ frithealadh bhuidhnean Aonaidh na h-Eòrpa. Cuiridh an neach-obrach liosta-cheadaichte an sàs air gach iarrtas a-mach a nithear airson buidheann a tha ceangailte ris an EU (21-compliance.md earrann 8.1). Tha an liosta nan aoighean a dh’ainmicheas seirbheisean rèitichte airson na roinne (puing-crìche stòraidh, solaraiche post-d, solaraiche bhidio aoigheachd, targaidean stòraidh na buidhne fhèin, solaraichean AI is cunntas post-d), aoighean seirbheis sam bith fo lagachadh gnìomhach, agus na h-aoighean a chuireas tu ann an QUIRE_EGRESS_ALLOW_HOSTS. Diùltar iarrtas gu aoigh poblach sam bith eile mus tèid a chur; thèid an diùltadh a sgrìobhadh ann an sreath sgrùdaidh na buidhne mar privacy/egress_refused, agus nochdaidh e fo Gèilleadh, Còmhnaidh dàta.
| Roghainn | Luachan | Buaidh |
|---|---|---|
QUIRE_EGRESS_ALLOW_HOSTS |
Liosta ainmean-aoigheachd le cromagan, no *.example.org airson gach fo-àrainn |
Aoighean a bharrachd a ruigeas buidheann EU. Bu chòir puingean-crìche webhook, xAPI is SIEM, biadhan bhlogaichean agus aoighean Amazon SES a bhith an seo, oir ’s e roghainnean na buidhne fhèin a th’ annta agus chan ainmich seirbheis sam bith iad. Buinidh loopback, seòlaidhean prìobhaideach agus ainmean le aon leubail mar web no clamav dhan lìonra agad fhèin agus cha tèid an sgrùdadh a-riamh |
Chan eil liosta aoighean air buidhnean na RA no na SA; cumaidh iad na sgrùdaidhean roinn-seirbheise. Suidhich an liosta air an neach-obrach; leughaidh duilleag an rianaire i air an t-sreath-lìn gus an liosta cheadaichte a shealltainn, agus mar sin cuir ann an docker/.env i, a leughas gach seirbheis.
Bheir sgrùdadh na h-aplacaid mearachd shoilleir agus inntrigeadh sgrùdaidh, ach chan e am barantas a th’ ann: faodaidh còd a bhith ceàrr. ’S e an lìonra am barantas. Chan eil Compose ga chur an gnìomh dhut. Airson càrn roinneil, cuir na seirbheisean worker agus web air lìonra internal: true aig nach eil ach aon shlighe a-mach tro neach-ionaid egress (mar eisimpleir soitheach Squid no tinyproxy) a cheadaicheas na h-aon aoighean ri QUIRE_EGRESS_ALLOW_HOSTS agus aoighean nan seirbheisean rèitichte; suidhich HTTPS_PROXY dha na seirbheisean sin. Tha duilleag còmhnaidh a’ liostadh nan dearbh aoighean a tha ceadaichte leis an aplacaid, agus mar sin faodar an dà liosta a choimeas.
Slàinte
| Puing-crìche | Brìgh |
|---|---|
/healthz |
Beòthachd: tha am pròiseas a’ freagairt. Cleachdaidh sgrùdaidhean Compose e |
/readyz |
Deisealachd: ruigear eisimeileachdan agus innsidh e a bheil gach seirbheis roghainneil rèitichte. Stiùir an cothromaiche luchd an seo |
Tha docker compose -f docker/compose.yaml ps a’ sealltainn slàinte gach seirbheise.
TLS
Tha seirbheis proxy (Caddy, Apache-2.0, docker/caddy/Caddyfile) sa chàrn bhunaiteach. Freagraidh i air puirt 80 agus 443 agus stiùiridh i:
| Aoigh no slighe | A’ dol gu |
|---|---|
QUIRE_PROXY_CONTENT_HOST |
content |
QUIRE_PROXY_APP_HOST, gach fo-àrainn neach-gabhail agus raon gnàthaichte |
web |
/_collab/ air na h-aoighean sin |
collab (websocket, QUIRE_COLLAB_URL) |
/_realtime/connection/ air na h-aoighean sin |
WebSocket cliant centrifugo; cha bhi API an fhrithealaiche fosgailte idir |
/_images/ air na h-aoighean sin |
imgproxy, le pròifil images (IMGPROXY_URL) |
Bheir init-env.sh QUIRE_PROXY_APP_HOST, QUIRE_PROXY_CONTENT_HOST, QUIRE_PROXY_HTTPS_PORT, QUIRE_COLLAB_URL agus IMGPROXY_URL às an dà thùs gus nach dealachadh iad. Deasaich iad còmhla ma dh’atharraicheas tu tùs le làimh.
Tha teisteanasan an urra ri QUIRE_PROXY_TLS:
-
internal(bunaiteach): ùghdarras teisteanais Caddy fhèin, airsonlocalhost,*.localhostaguslvh.me. Earb ris an fhreumh aige aon turas, agus an uair sin faigh an teisteanas:docker compose -f docker/compose.yaml cp \ proxy:/data/caddy/pki/authorities/local/root.crt ./quire-local-ca.crtCuir
quire-local-ca.crtri stòr teisteanasan earbsach an t-siostaim no a’ bhrabhsair. Gabhaidhcurlris le--cacert. -
Seòladh post-d: teisteanasan ACME fèin-obrachail (Let’s Encrypt agus an uair sin ZeroSSL) airson fìor ainmean-aoigheachd. Feumaidh DNS airson an dà thùs agus gach aoigh neach-gabhail comharrachadh an seo, agus feumaidh puirt 80 agus 443 ruigsinn bhon eadar-lìon.
Thèid aoighean luchd-gabhail a chruthachadh nuair a thadhlas cuideigin orra an toiseach agus dìreach ma dhearbhas web gum buin an t-ainm don stàladh seo (/tls-allowed, air iarraidh air lìonra Compose). Chan eil feum air teisteanas wildcard no plugan solaraiche DNS, agus chan urrainn do choigreach a chuireas ainm gu aoigh iarraidh air teisteanasan a chruthachadh. Tha teisteanasan agus an t-ùghdarras ionadail ann an leabhar caddy-data; dèan cùl-taic dheth leis a’ chòrr ma chleachdas tu internal.
Cha chreid Web ach X-Forwarded-For on neach-ionaid: tha seòladh stèidhichte aig an neach-ionaid (QUIRE_PROXY_ADDRESS, 172.29.64.10 mar bhun-roghainn) air fo-lìon stèidhichte (QUIRE_COMPOSE_SUBNET), agus ainmichidh QUIRE_TRUSTED_PROXY_CIDRS an seòladh sin. Ma tha am fo-lìon a’ bualadh ri lìonra air an aoigh, atharraich an dà roghainn agus ruith docker compose down mus ruith thu up.
Air cùl neach-ionaid cùil agad fhèin
Gus cothromaiche luchd no neach-ionaid a tha thu a’ ruith mar-thà a chleachdadh na àite, fàg proxy a-mach (docker compose up -d --scale proxy=0) agus cuir crìoch air TLS air beulaibh web (8080), content (8081), collab (1234, websocket) agus centrifugo (8000, websocket). Suidhich seòlaidhean poblach ann an QUIRE_APP_ORIGIN, QUIRE_CONTENT_ORIGIN agus QUIRE_COLLAB_URL (wss://), agus raon sheòlaidhean an neach-ionaid ann an QUIRE_TRUSTED_PROXY_CIDRS.
Fuasgladh dhuilgheadasan
- Sguir
initle “QUIRE_DATABASE_ID is not a UUID”: suidhich e leuuidgen. - Bidh
webag ath-thòiseachadh le “did not start on compose”: tha an log a’ liostadh gach suidheachadh nach urrainn dha urram a thoirt dha agus dè chleachdas tu na àite. - Chan eil atharrachadh facal-faire dreuchd ann an
.envan dèidh a’ chiad tòiseachadh a’ dèanamh dad: ruithidh an sgriobt tòiseachaidh aon turas. CleachdALTER ROLE. - Fàilligidh luchdachadh suas le mearachd sganaidh fhad ’s a tha
CLAMAV_URLsuidhichte: luchdaichidh ClamAV na soidhnichean a-nuas aig a’ chiad tòiseachadh, agus bheir seo beagan mhionaidean.