services: airc: build: context: . dockerfile: Dockerfile target: airc image: airc restart: "no" env_file: - .env devices: - /dev/dri:/dev/dri depends_on: - ollama networks: - internal ports: - 8911:8911 volumes: - ./cache:/root/.cache - ./src:/opt/airc/src:rw - ./doc:/opt/airc/doc:ro - ./results:/opt/airc/results:rw - ./ketr.chat:/opt/airc/ketr-chat:rw # Live mount src cap_add: # used for running ze-monitor within container - CAP_DAC_READ_SEARCH # Bypass all filesystem read access checks - CAP_PERFMON # Access to perf_events (vs. overloaded CAP_SYS_ADMIN) - CAP_SYS_PTRACE # PTRACE_MODE_READ_REALCREDS ptrace access mode check ollama: build: context: . dockerfile: Dockerfile target: ollama image: ollama restart: "no" env_file: - .env environment: - OLLAMA_HOST=0.0.0.0 - ONEAPI_DEVICE_SELECTOR=level_zero:0 devices: - /dev/dri:/dev/dri ports: - 11434:11434 # ollama serve port networks: - internal volumes: - ./cache:/root/.cache # Cache hub models and neo_compiler_cache - ./ollama:/root/.ollama # Cache the ollama models cap_add: # used for running ze-monitor within container - CAP_DAC_READ_SEARCH # Bypass all filesystem read access checks - CAP_PERFMON # Access to perf_events (vs. overloaded CAP_SYS_ADMIN) - CAP_SYS_PTRACE # PTRACE_MODE_READ_REALCREDS ptrace access mode check jupyter: build: context: . dockerfile: Dockerfile target: jupyter image: jupyter env_file: - .env devices: - /dev/dri:/dev/dri depends_on: - ollama - miniircd ports: - 8888:8888 # Jupyter Notebook - 60673:60673 # Gradio - 5000:5000 # Flask React server - 3000:3000 # REACT expo networks: - internal volumes: - ./jupyter:/opt/jupyter:rw - ./cache:/root/.cache - ./src:/opt/airc/src:rw # Live mount src - ./ketr.chat:/opt/airc/ketr-chat:rw # Live mount src deploy: resources: limits: memory: "0" # No memory limit (Docker treats 0 as unlimited) reservations: memory: "0" # No reserved memory (optional) ulimits: memlock: -1 # Prevents memory from being locked #oom_kill_disable: true # Prevents OOM killer from killing the container cap_add: # used for running ze-monitor within container - CAP_DAC_READ_SEARCH # Bypass all filesystem read access checks - CAP_PERFMON # Access to perf_events (vs. overloaded CAP_SYS_ADMIN) - CAP_SYS_PTRACE # PTRACE_MODE_READ_REALCREDS ptrace access mode check miniircd: build: context: . dockerfile: Dockerfile target: miniircd image: miniircd env_file: - .env devices: - /dev/dri:/dev/dri ports: - 6667:6667 # IRC networks: - internal volumes: - ./cache:/root/.cache networks: internal: driver: bridge