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

3.9 KiB
Raw Blame History

Локальная настройка Docker

Здесь описан один из способов запуска сервера olcrtc с локальной конфигурацией Docker.

Идея

  • держать изменяемые Docker-файлы в скрытой папке .local
  • хранить конфигурационные файлы вне Git, в папке .local
  • позволять пользователям обновлять репозиторий обычным git pull

1. Клонирование репозитория

git clone https://github.com/openlibrecommunity/olcrtc.git
cd olcrtc

2. Обновление до последней версии

Чтобы получить новую версию из upstream, выполните команду ниже:

git pull https://github.com/openlibrecommunity/olcrtc.git -recurse-submodules

3. Папка для локальных конфигураций

Создайте директорию .local в корне репозитория:

mkdir -p .local

Эта папка должна содержать файлы, которые будут использоваться только на вашей сервере.

4. Скопируйте docker-compose.yml в .local

Скопируйте файл docker-compose.yml (есть в репозитории), чтобы ваша локальная версия не перезаписывалась при следующем обноволении репозитория через git pull:

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:

docker compose -f .local/docker-compose.server.yml --env-file .local/.env up -d

Проверка состояния контейнера:

docker compose -f .local/docker-compose.server.yml --env-file .local/.env ps

 Просмотр логов контейнера:

docker compose -f .local/docker-compose.server.yml --env-file .local/.env logs -f
docker logs olcrtc-server

7. Обновление контейнера

Запустить команду ниже для получения новой версии репозитория из облака:

git pull https://github.com/openlibrecommunity/olcrtc.git

После каждого обновления сравните новый и старый файл:

diff -wy .local/docker-compose.yml docker-compose.server.yml

Если есть отличия скопируйте файл из корня в папку .local:

cp docker-compose.server.yml .local/docker-compose.server.yml

Затем перезапустите контейнер командами ниже:

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.