Files

1 line
9.6 KiB
JSON

{"repo": "ch3fulrich/agent-skills", "files": {"infra/local-ai/docker-compose.yml": {"72f349f7bc93d3adebac8453c2fd573325327377": {"t": 1785747411.303924, "n": 4566, "h": "019339cbe7a8f68c", "c": "version: \"3.9\"\n\nservices:\n ollama:\n image: ollama/ollama:latest\n container_name: ollama\n restart: unless-stopped\n ports:\n - \"${OLLAMA_API_PORT:-11434}:11434\"\n volumes:\n - ${APPS_ROOT:-C:/Apps}/ollama:/root/.ollama\n environment:\n - OLLAMA_NUM_PARALLEL=${OLLAMA_NUM_PARALLEL:-4}\n - OLLAMA_MAX_LOADED_MODELS=${OLLAMA_MAX_LOADED_MODELS:-3}\n - NVIDIA_VISIBLE_DEVICES=all\n runtime: nvidia\n tty: true\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=2CAA -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\n litellm:\n image: ghcr.io/berriai/litellm:main-latest\n container_name: litellm-proxy\n restart: unless-stopped\n ports:\n - \"${LITELLM_PORT:-4000}:4000\"\n volumes:\n - ./litellm_config.yml:/app/config.yaml:ro\n command: [\"--config\", \"/app/config.yaml\", \"--port\", \"4000\"]\n environment:\n - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY:-sk-proxy-1234}\n - PERPLEXITY_API_KEY=${PERPLEXITY_API_KEY}\n healthcheck:\n test: [\"CMD\", \"curl\", \"-f\", \"http://localhost:4000/health\"]\n interval: 30s\n timeout: 10s\n retries: 3\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n\n open-webui:\n image: ghcr.io/open-webui/open-webui:main\n container_name: open-webui\n restart: unless-stopped\n depends_on:\n - ollama\n ports:\n - \"${OPENWEBUI_HTTP_PORT:-3131}:8080\"\n volumes:\n - ${APPS_ROOT:-C:/Apps}/open-webui:/app/backend/data\n environment:\n - OLLAMA_BASE_URL=http://ollama:11434\n - WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY}\n - OPENAI_API_BASE_URL=${OPENAI_API_BASE_URL:-http://litellm-proxy:4000/v1}\n - OPENAI_API_KEY=${OPENAI_API_KEY:-sk-proxy-1234}\n - WEBUI_AUTH=${WEBUI_AUTH:-true}\n extra_hosts:\n - \"host.docker.internal:host-gateway\"\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=1F90 -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\n ollama-agent:\n image: ollama/ollama:latest\n container_name: ollama-agent\n restart: unless-stopped\n volumes:\n - ${APPS_ROOT:-C:/Apps}/ollama:/root/.ollama\n environment:\n - OLLAMA_HOST=http://host.docker.internal:11434 # connects to main server\n - NVIDIA_VISIBLE_DEVICES=all\n runtime: nvidia\n tty: true\n stdin_open: true\n entrypoint: /bin/sh\n command: -c \"tail -f /dev/null\"\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n\n openhands:\n image: ghcr.io/all-hands-ai/openhands:main\n container_name: ws-openhands-agent\n restart: unless-stopped\n ports:\n - \"${OPENHANDS_PORT:-3000}:3000\"\n environment:\n - SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:main}\n - WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-C:/Apps/coding_workspace}\n - LLM_MODEL=${OPENHANDS_LLM_MODEL:-}\n - LLM_API_KEY=${OPENHANDS_LLM_API_KEY:-}\n - LLM_BASE_URL=${OPENHANDS_LLM_BASE_URL:-}\n - OPENAI_API_KEY=${OPENAI_API_KEY:-}\n - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}\n - GEMINI_API_KEY=${GEMINI_API_KEY:-}\n - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:-}\n - LOG_ALL_EVENTS=true\n volumes:\n - /var/run/docker.sock:/var/run/docker.sock\n - ${WORKSPACE_BASE:-C:/Apps/coding_workspace}:/opt/workspace_base\n extra_hosts:\n - \"host.docker.internal:host-gateway\"\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=0BB8 -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\nnetworks:\n default:\n name: local-ai-network\n"}, "7846a6a3cd6a94f046a7506c7c3176e55d50d53b": {"t": 1785773131.0949678, "n": 4566, "h": "019339cbe7a8f68c", "c": "version: \"3.9\"\n\nservices:\n ollama:\n image: ollama/ollama:latest\n container_name: ollama\n restart: unless-stopped\n ports:\n - \"${OLLAMA_API_PORT:-11434}:11434\"\n volumes:\n - ${APPS_ROOT:-C:/Apps}/ollama:/root/.ollama\n environment:\n - OLLAMA_NUM_PARALLEL=${OLLAMA_NUM_PARALLEL:-4}\n - OLLAMA_MAX_LOADED_MODELS=${OLLAMA_MAX_LOADED_MODELS:-3}\n - NVIDIA_VISIBLE_DEVICES=all\n runtime: nvidia\n tty: true\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=2CAA -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\n litellm:\n image: ghcr.io/berriai/litellm:main-latest\n container_name: litellm-proxy\n restart: unless-stopped\n ports:\n - \"${LITELLM_PORT:-4000}:4000\"\n volumes:\n - ./litellm_config.yml:/app/config.yaml:ro\n command: [\"--config\", \"/app/config.yaml\", \"--port\", \"4000\"]\n environment:\n - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY:-sk-proxy-1234}\n - PERPLEXITY_API_KEY=${PERPLEXITY_API_KEY}\n healthcheck:\n test: [\"CMD\", \"curl\", \"-f\", \"http://localhost:4000/health\"]\n interval: 30s\n timeout: 10s\n retries: 3\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n\n open-webui:\n image: ghcr.io/open-webui/open-webui:main\n container_name: open-webui\n restart: unless-stopped\n depends_on:\n - ollama\n ports:\n - \"${OPENWEBUI_HTTP_PORT:-3131}:8080\"\n volumes:\n - ${APPS_ROOT:-C:/Apps}/open-webui:/app/backend/data\n environment:\n - OLLAMA_BASE_URL=http://ollama:11434\n - WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY}\n - OPENAI_API_BASE_URL=${OPENAI_API_BASE_URL:-http://litellm-proxy:4000/v1}\n - OPENAI_API_KEY=${OPENAI_API_KEY:-sk-proxy-1234}\n - WEBUI_AUTH=${WEBUI_AUTH:-true}\n extra_hosts:\n - \"host.docker.internal:host-gateway\"\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=1F90 -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\n ollama-agent:\n image: ollama/ollama:latest\n container_name: ollama-agent\n restart: unless-stopped\n volumes:\n - ${APPS_ROOT:-C:/Apps}/ollama:/root/.ollama\n environment:\n - OLLAMA_HOST=http://host.docker.internal:11434 # connects to main server\n - NVIDIA_VISIBLE_DEVICES=all\n runtime: nvidia\n tty: true\n stdin_open: true\n entrypoint: /bin/sh\n command: -c \"tail -f /dev/null\"\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n\n openhands:\n image: ghcr.io/all-hands-ai/openhands:main\n container_name: ws-openhands-agent\n restart: unless-stopped\n ports:\n - \"${OPENHANDS_PORT:-3000}:3000\"\n environment:\n - SANDBOX_RUNTIME_CONTAINER_IMAGE=${SANDBOX_RUNTIME_CONTAINER_IMAGE:-ghcr.io/all-hands-ai/runtime:main}\n - WORKSPACE_MOUNT_PATH=${WORKSPACE_BASE:-C:/Apps/coding_workspace}\n - LLM_MODEL=${OPENHANDS_LLM_MODEL:-}\n - LLM_API_KEY=${OPENHANDS_LLM_API_KEY:-}\n - LLM_BASE_URL=${OPENHANDS_LLM_BASE_URL:-}\n - OPENAI_API_KEY=${OPENAI_API_KEY:-}\n - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}\n - GEMINI_API_KEY=${GEMINI_API_KEY:-}\n - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:-}\n - LOG_ALL_EVENTS=true\n volumes:\n - /var/run/docker.sock:/var/run/docker.sock\n - ${WORKSPACE_BASE:-C:/Apps/coding_workspace}:/opt/workspace_base\n extra_hosts:\n - \"host.docker.internal:host-gateway\"\n security_opt:\n - no-new-privileges:true\n logging:\n driver: local\n options:\n max-size: \"25m\"\n max-file: \"2\"\n healthcheck:\n test: [\"CMD-SHELL\", \"awk -v p=0BB8 -v st=0A -v c=: 'BEGIN{f=0} $4==st{n=split($2,a,c); if(toupper(a[n])==toupper(p)) f=1} END{exit !f}' /proc/net/tcp /proc/net/tcp6 2>/dev/null || exit 1\"]\n interval: 30s\n timeout: 10s\n retries: 5\n start_period: 30s\n\nnetworks:\n default:\n name: local-ai-network\n"}}}}