# Eldir Docker Compose проект для LLM-инференса и мониторинга. ## Сервисы | Сервис | Описание | Порт | |---|---|---| | `llama-server` | LLM inference (CUDA) | 8080 | | `python+tcl` | GUI приложение (Tkinter/Tcl) | — | | `node_exporter` | Метрики для Prometheus | 9100 | ## Запуск ```bash docker compose up -d ``` ## Остановка ```bash docker compose down ``` ## Gitea Container Registry ### Логин в registry ```bash docker login gitea.hal9000.local ``` Введите логин и пароль от вашего Gitea аккаунта. ### Pull образов ```bash docker pull gitea.hal9000.local/teramonious/eldir/python-tcl:latest ``` ### Build и Push ```bash docker build -t gitea.hal9000.local/teramonious/eldir/python-tcl:latest -f docker-tcl/Dockerfile . docker push gitea.hal9000.local/teramonious/eldir/python-tcl:latest ``` ### CI/CD При пуше изменений в папку `docker-tcl/` автоматически запускается сборка: ```yaml name: Build & Push on: push: paths: ['docker-tcl/**'] jobs: build: runs-on: self-hosted steps: - uses: actions/checkout@v4 - uses: docker/login-action@v3 with: registry: gitea.hal9000.local username: ${{ secrets.GITEA_USERNAME }} password: ${{ secrets.GITEA_PASSWORD }} - uses: docker/build-push-action@v5 with: context: . file: docker-tcl/Dockerfile push: true tags: gitea.hal9000.local/teramonious/eldir/python-tcl:latest ``` ### Docker Compose с образами из registry ```yaml services: python-tcl: image: gitea.hal9000.local/teramonious/eldir/python-tcl:latest ``` ## Стек - **llama-server** — CUDA, GPU - **python+tcl** — X11 forwarding - **node_exporter** — Prometheus metrics - Образы → Gitea Container Registry (OCI-compatible) - CI/CD → Gitea Actions (автобилд при пуше в `docker-tcl/**`)