Files
olcrtc/docs/docker.md
2026-05-24 05:09:55 +04:00

105 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Локальная настройка Docker
Здесь описан один из способов запуска сервера olcrtc с локальной конфигурацией Docker.
## Идея
- держать изменяемые Docker-файлы в скрытой папке `.local`
- хранить конфигурационные файлы вне Git, в папке `.local`
- позволять пользователям обновлять репозиторий обычным `git pull`
## 1. Клонирование репозитория
```bash
git clone https://github.com/openlibrecommunity/olcrtc.git
cd olcrtc
```
## 2. Обновление до последней версии
Чтобы получить новую версию из upstream, выполните команду ниже:
```bash
git pull https://github.com/openlibrecommunity/olcrtc.git -recurse-submodules
```
## 3. Папка для локальных конфигураций
Создайте директорию `.local` в корне репозитория:
```bash
mkdir -p .local
```
Эта папка должна содержать файлы, которые будут использоваться только на вашей сервере.
## 4. Скопируйте docker-compose.yml в `.local`
Скопируйте файл ``docker-compose.yml`` (есть в репозитории), чтобы ваша локальная версия не перезаписывалась при следующем обноволении репозитория через ``git pull``:
```bash
cp docker-compose.server.yml .local/docker-compose.server.yml
```
Если файл `docker-compose.yml` позже изменится, скопируйте его снова этой же командой после `git pull`.
## 5. Создайте локальный файл окружения
Создайте `.local/.env` и заполните значения выполнения в соответствии с выбранным типом подключения.
Пример можно найти в `docs/examples/.env.telemost.server.example`.
## 6. Запуск OLCRTC
Запуск контейнеризированного сервера используя ``docker-compose.server.yml`` и локальный ``.env``:
```bash
docker compose -f .local/docker-compose.server.yml --env-file .local/.env up -d
```
Проверка состояния контейнера:
```bash
docker compose -f .local/docker-compose.server.yml --env-file .local/.env ps
```
 Просмотр логов контейнера:
```bash
docker compose -f .local/docker-compose.server.yml --env-file .local/.env logs -f
docker logs olcrtc-server
```
## 7. Обновление контейнера
Запустить команду ниже для получения новой версии репозитория из облака:
```bash
git pull https://github.com/openlibrecommunity/olcrtc.git
```
После каждого обновления сравните новый и старый файл:
```bash
diff -wy .local/docker-compose.yml docker-compose.server.yml
```
Если есть отличия скопируйте файл из корня в папку ``.local``:
```bash
cp docker-compose.server.yml .local/docker-compose.server.yml
```
Затем перезапустите контейнер командами ниже:
```bash
docker compose -f .local/docker-compose.server.yml down
docker compose -f .local/docker-compose.server.yml --env-file .local/.env up -d
```
## Примечания
- Храните все локальные Docker-файлы внутри отдельной папки `.local`.
- Не добавляйте `.local` в репозиторий (она должна быть в файле ``.gitignore``)
- Держите общую документацию в `docs/`, а специфичные настройки в `.local`.