mirror of
https://github.com/telemt/telemt.git
synced 2026-06-09 20:41:44 +03:00
Merge branch 'flow' of https://github.com/telemt/telemt into flow
This commit is contained in:
@@ -10,12 +10,15 @@ services:
|
|||||||
- "443:443"
|
- "443:443"
|
||||||
- "127.0.0.1:9090:9090"
|
- "127.0.0.1:9090:9090"
|
||||||
- "127.0.0.1:9091:9091"
|
- "127.0.0.1:9091:9091"
|
||||||
# Allow caching 'proxy-secret' in read-only container
|
# Working dir uses tmpfs for caching 'proxy-secret' at runtime.
|
||||||
working_dir: /etc/telemt
|
# Config is mounted as a directory (not a single file) so the API can
|
||||||
|
# atomically update config.toml via write-temp → rename within the same FS.
|
||||||
|
working_dir: /run/telemt
|
||||||
|
command: ["/etc/telemt/config.toml"]
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.toml:/etc/telemt/config.toml:ro
|
- ./config:/etc/telemt:rw
|
||||||
tmpfs:
|
tmpfs:
|
||||||
- /etc/telemt:rw,mode=1777,size=4m
|
- /run/telemt:rw,mode=1777,size=4m
|
||||||
environment:
|
environment:
|
||||||
- RUST_LOG=info
|
- RUST_LOG=info
|
||||||
healthcheck:
|
healthcheck:
|
||||||
@@ -24,8 +27,6 @@ services:
|
|||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 3
|
retries: 3
|
||||||
start_period: 20s
|
start_period: 20s
|
||||||
# Uncomment this line if you want to use host network for IPv6, but bridge is default and usually better
|
|
||||||
# network_mode: host
|
|
||||||
cap_drop:
|
cap_drop:
|
||||||
- ALL
|
- ALL
|
||||||
cap_add:
|
cap_add:
|
||||||
@@ -36,4 +37,4 @@ services:
|
|||||||
ulimits:
|
ulimits:
|
||||||
nofile:
|
nofile:
|
||||||
soft: 65536
|
soft: 65536
|
||||||
hard: 262144
|
hard: 262144
|
||||||
@@ -235,7 +235,10 @@ curl -s http://127.0.0.1:9091/v1/users | jq -r '.data[] | "[\(.username)]", (.li
|
|||||||
|
|
||||||
# Telemt через Docker Compose
|
# Telemt через Docker Compose
|
||||||
|
|
||||||
**1. Отредактируйте `config.toml` в корневом каталоге репозитория (как минимум: порт, пользовательские секреты, tls_domain)**
|
**1. Создайте директорию `config/` и поместите в неё отрдеактированный `config.toml` (указав как минимум: порт, пользовательские секреты, tls_domain):**
|
||||||
|
```bash
|
||||||
|
mkdir config && mv config.toml config/
|
||||||
|
```
|
||||||
**2. Запустите контейнер:**
|
**2. Запустите контейнер:**
|
||||||
```bash
|
```bash
|
||||||
docker compose up -d --build
|
docker compose up -d --build
|
||||||
@@ -249,7 +252,7 @@ docker compose logs -f telemt
|
|||||||
docker compose down
|
docker compose down
|
||||||
```
|
```
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> - В `docker-compose.yml` файл `./config.toml` монтируется в `/app/config.toml` (доступно только для чтения)
|
> - Директория `./config/` монтируется в `/etc/telemt/` (read-write), что позволяет API атомарно обновлять config.toml
|
||||||
> - По умолчанию публикуются порты 443:443, а контейнер запускается со сброшенными привилегиями (добавлена только `NET_BIND_SERVICE`)
|
> - По умолчанию публикуются порты 443:443, а контейнер запускается со сброшенными привилегиями (добавлена только `NET_BIND_SERVICE`)
|
||||||
> - Если вам действительно нужна сеть хоста (обычно это требуется только для некоторых конфигураций IPv6), раскомментируйте `network_mode: host`
|
> - Если вам действительно нужна сеть хоста (обычно это требуется только для некоторых конфигураций IPv6), раскомментируйте `network_mode: host`
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user