This commit is contained in:
y1lm0z
2026-07-16 01:50:29 +03:00
parent 3492f7b8e4
commit b18325fbef
6 changed files with 7 additions and 6 deletions
+53
View File
@@ -0,0 +1,53 @@
{
"name": "Matrix Conduit",
"id": "matrix-conduit",
"available": true,
"short_desc": "Hafif, hizli ve federasyon destekli Matrix homeserver.",
"author": "matrix-conduit",
"port": 8448,
"categories": ["social", "network"],
"description": "Conduit, Rust ile yazilmis, dusuk kaynak tuketen bir Matrix homeserver'dir. Element gibi Matrix istemcileriyle uyumludur ve federasyonu destekler.",
"dynamic_config": true,
"tipi_version": 1,
"version": "0.10.12",
"source": "https://gitlab.com/famedly/conduit",
"website": "https://conduit.rs",
"exposable": true,
"force_expose": true,
"https": true,
"supported_architectures": ["arm64", "amd64"],
"form_fields": [
{
"type": "boolean",
"label": "Kayit acik olsun mu?",
"hint": "Kapali birakip ilk admin hesabini kaydettikten sonra tekrar kapatman onerilir.",
"required": false,
"default": false,
"env_variable": "ALLOW_REGISTRATION"
},
{
"type": "boolean",
"label": "Federasyona izin ver",
"hint": "Diger Matrix sunucularindaki kullanicilarla konusabilmek icin acik olmali.",
"required": false,
"default": true,
"env_variable": "ALLOW_FEDERATION"
},
{
"type": "text",
"label": "Guvenilir sunucular (JSON liste)",
"hint": "Ornek: [\"matrix.org\"]",
"placeholder": "[\"matrix.org\"]",
"required": false,
"default": "[\"matrix.org\"]",
"env_variable": "TRUSTED_SERVERS"
},
{
"type": "number",
"label": "Maksimum istek boyutu (byte)",
"required": false,
"default": 20000000,
"env_variable": "MAX_REQUEST_SIZE"
}
]
}
@@ -0,0 +1,19 @@
server {
listen 80 default_server;
server_name _;
location /.well-known/matrix/server {
default_type application/json;
return 200 '{"m.server": "${APP_DOMAIN}:443"}';
}
location /.well-known/matrix/client {
default_type application/json;
add_header Access-Control-Allow-Origin *;
return 200 '{"m.homeserver": {"base_url": "https://${APP_DOMAIN}"}}';
}
location / {
return 404;
}
}
+57
View File
@@ -0,0 +1,57 @@
services:
matrix-conduit:
image: matrixconduit/matrix-conduit:v0.10.12
restart: unless-stopped
environment:
- CONDUIT_SERVER_NAME=${APP_DOMAIN}
- CONDUIT_DATABASE_PATH=/var/lib/matrix-conduit/
- CONDUIT_DATABASE_BACKEND=rocksdb
- CONDUIT_ADDRESS=0.0.0.0
- CONDUIT_PORT=6167
- CONDUIT_LOG=${LOG:-warn,rocket=off,_=off,sled=off}
- CONDUIT_MAX_REQUEST_SIZE=${MAX_REQUEST_SIZE:-20000000}
- CONDUIT_ALLOW_REGISTRATION=${ALLOW_REGISTRATION:-false}
- CONDUIT_ALLOW_FEDERATION=${ALLOW_FEDERATION:-true}
- CONDUIT_TRUSTED_SERVERS=${TRUSTED_SERVERS:-["matrix.org"]}
- CONDUIT_ALLOW_CHECK_FOR_UPDATES=false
- CONDUIT_TURN_URIS=${TURN_URIS:-["turn:localhost?transport=udp", "turn:localhost?transport=tcp"]}
- CONDUIT_TURN_SECRET=${TURN_SECRET:-turnsecret}
# Bu satir olmadan Conduit diskte config dosyasi aramaya calisir.
- CONDUIT_CONFIG=
volumes:
- ${APP_DATA_DIR}/data:/var/lib/matrix-conduit/
x-runtipi:
is_main: true
internal_port: 6167
matrix-conduit-well-known:
# build: yerine hazir nginx imaji kullaniyoruz; Runtipi app store'lar
# kurulum sirasinda Dockerfile build etmeyi desteklemiyor.
image: nginx:1.27-alpine
restart: unless-stopped
environment:
- APP_DOMAIN=${APP_DOMAIN}
volumes:
# apps/matrix-conduit/data/nginx/default.conf.template dosyasi
# kurulumda otomatik olarak ${APP_DATA_DIR}/data/nginx altina kopyalanir.
- ${APP_DATA_DIR}/data/nginx:/etc/nginx/templates:ro
labels:
# Ana servis disindaki bu container icin Traefik label'larini
# elle yaziyoruz cunku otomatik routing sadece is_main servise uygulanir.
- "traefik.enable=true"
- "traefik.http.services.{{RUNTIPI_APP_ID}}-wellknown.loadbalancer.server.port=80"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown-insecure.rule=Host(`${APP_DOMAIN}`) && PathPrefix(`/.well-known/matrix`)"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown-insecure.entrypoints=web"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown-insecure.service={{RUNTIPI_APP_ID}}-wellknown"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown-insecure.priority=100"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown.rule=Host(`${APP_DOMAIN}`) && PathPrefix(`/.well-known/matrix`)"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown.entrypoints=websecure"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown.tls.certresolver=myresolver"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown.service={{RUNTIPI_APP_ID}}-wellknown"
- "traefik.http.routers.{{RUNTIPI_APP_ID}}-wellknown.priority=100"
x-runtipi:
# Traefik'in bu container'a ulasabilmesi icin ana ag'a katiyoruz.
add_to_main_network: true
x-runtipi:
schema_version: 2
@@ -0,0 +1,16 @@
# Matrix Conduit
Conduit, Rust ile yazılmış hafif ve hızlı bir Matrix homeserver'dır. Düşük
kaynaklı sunucularda (Raspberry Pi dahil) rahatça çalışır ve diğer Matrix
sunucularıyla federasyon kurabilir.
## Kurulum sonrası yapılması gerekenler
1. Uygulamayı kurarken **Expose via domain name (HTTPS)** seçeneğini
kullanman gerekir; Conduit yerel `.tipi.local` alan adıyla düzgün
federe olamaz, gerçek bir domain/subdomain gerekir.
2. DNS'te domainin sunucunun IP adresine işaret ettiğinden emin ol.
3. Kurulumdan sonra `ALLOW_REGISTRATION` seçeneğini geçici olarak açıp ilk
admin hesabını oluştur, sonra tekrar kapat.
4. Federasyon Test Aracı ile (`https://federationtester.matrix.org`)
sunucunun doğru yapılandırıldığını kontrol edebilirsin.
Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB