Baza wiedzy
Architektura i technologia
Źródło: dopasowanie do Julia AI (PDF) oraz praktyk Pilot Hangar. W dokumentacji źródłowej Julii dla MSFS nie ma wymogu, by rdzeń asystenta działał w kontenerze — domyślna forma to aplikacja desktopowa na Windows. Poniżej: jak produkt jest pakowany oraz kiedy Docker ma sens w ekosystemie.
Spis treści
# Przykład: usługa pomocnicza lub batch — dostosuj do repo
FROM python:3.12-slim
ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY src/ ./src/
USER nobody
CMD ["python", "-m", "julia.tooling.example"]
Zasady
requirements.txt przed kodem — cache warstw.Jeśli zespół używa MQTT dla komponentów JET/Hangar (patrz mqtt.md), typowy szkielet nie obejmuje pełnego klienta Julia+SimConnect — tylko usługi satelitarne. Poniżej referencyjny Compose łączący rdzeń workerowy z brokerem (dostosuj ścieżki do repo).
services:
julia-core:
build: ./services/julia-core
env_file: .env.runtime
restart: unless-stopped
depends_on: [mqtt]
networks: [hangar-internal]
healthcheck:
test: ["CMD", "python", "-c", "import sys; sys.exit(0)"]
interval: 30s
timeout: 5s
retries: 3
mqtt:
image: eclipse-mosquitto:2
volumes:
- ./deploy/mosquitto.conf:/mosquitto/config/mosquitto.conf:ro
- mosquitto-data:/mosquitto/data
networks: [hangar-internal]
ports:
- "127.0.0.1:1883:1883"
volumes:
mosquitto-data:
networks:
hangar-internal:
driver: bridge
Uwaga: usługa julia-core w powyższym szablonie oznacza worker/konsumenta MQTT lub narzędzie Python w kontenerze — nie zamienia aplikacji desktopowej Julii z PDF.
0.0.0.0 w dev; produkcja za TLS/VPN.docker build --pullgit sha → semver na releaseFROM python@sha256:… po walidacji.deploy:
resources:
limits:
cpus: "1.0"
memory: 512M
reservations:
memory: 256M
Dostosuj pod profil edge vs serwer centralny.
unless-stopped w Compose; w Kubernetes Deployment z replicas./version lub APP_VERSION).