sha256:dc41032d47aa8463ed54adec15d9c4060e53315a8c6f877a0f59cc0d463d0360
Last pushed
5 months by dockersamplesbuildbot
Type
Compose
Manifest digest
sha256:dc41032d47aa8463ed54adec15d9c4060e53315a8c6f877a0f59cc0d463d0360
##################################################################################################
# This Compose file is intended to run a Labspace. It can be run with the following:
#
# CONTENT_REPO_URL=https://github.com/username/labspace-content-repo docker compose -f compose.run.yaml up
##################################################################################################
services:
configurator:
image: dockersamples/labspace-configurator:v0.26.0
use_api_socket: true
volumes:
- labspace-content:/project
- labspace-instructions:/instructions
- docker-creds:/docker-creds
- labspace-support:/etc/labspace-support
interface:
image: dockersamples/labspace-interface:v0.26.0
ports:
- "3030:3030"
volumes:
- labspace-instructions:/labspace/instructions:ro
- type: volume
source: labspace-support
target: /etc/labspace-support/private-key
volume:
subpath: private-key
- type: volume
source: labspace-support
target: /etc/labspace-support/socket
volume:
subpath: socket
- type: volume
source: labspace-support
target: /etc/labspace-support/metadata
volume:
subpath: metadata
depends_on:
workspace:
condition: service_started
configurator:
condition: service_completed_successfully
restart: unless-stopped
workspace:
image: dockersamples/labspace-workspace-node:v0.26.0
depends_on:
configurator:
condition: service_completed_successfully
socket-proxy:
condition: service_started
ports:
- 8085:8085 # For the IDE itself
- 3000:3000 # For the Node application running in the IDE
volumes:
- socket-proxy:/var/run
- labspace-content:/home/coder/project
- docker-creds:/docker-creds
- type: volume
source: labspace-support
target: /etc/labspace-support/public-key
volume:
subpath: public-key
- type: volume
source: labspace-support
target: /etc/labspace-support/socket
volume:
subpath: socket
host-republisher:
image: dockersamples/labspace-host-port-republisher:v0.26.0
pull_policy: always
restart: always
volumes:
- socket-proxy:/var/run
network_mode: service:workspace
environment:
LABEL_FILTER: labspace-resource=true
depends_on:
- workspace
- socket-proxy
workspace-cleaner:
image: dockersamples/labspace-cleaner:v0.26.0
pull_policy: always
volumes:
- socket-proxy:/var/run
environment:
LABEL_FILTER: labspace-resource=true
depends_on:
- socket-proxy
socket-proxy:
image: mikesir87/docker-socket-proxy:v1.3.1
volumes:
- socket-proxy:/tmp/proxy
- /var/run/docker.sock:/var/run/docker.sock
configs:
- source: docker-proxy-config-labels
target: /etc/docker-socket-proxy/config.d/add-and-require-labels.yaml
- source: docker-proxy-mount-remap
target: /etc/docker-socket-proxy/config.d/mount-path-remap.yaml
- source: docker-proxy-mount-allowlist
target: /etc/docker-socket-proxy/config.d/mount-path-allowlist.yaml
- source: docker-proxy-forward-proxied-socket
target: /etc/docker-socket-proxy/config.d/forward-proxied-socket.yaml
- source: docker-proxy-add-to-labspace-network
target: /etc/docker-socket-proxy/config.d/add-to-labspace-network.yaml
environment:
DEBUG_LOGS: "true"
LISTEN_SOCKET_PATH: /tmp/proxy/docker.sock
volumes:
socket-proxy:
name: labspace-socket-proxy
labspace-content:
name: labspace-content
labspace-instructions:
docker-creds:
labspace-support:
networks:
default:
name: labspace
configs:
docker-proxy-config-labels:
content: |
mutators:
# Add labels to all newly created objects
- type: addLabels
labels:
labspace-resource: "true"
responseFilters:
# Only return objects with the labels we mutated on
- type: labelFilter
objectsToFilter:
- containers
- volumes
- networks
requiredLabels:
labspace-resource: "true"
docker-proxy-mount-remap:
content: |
# Remap the project directory to the labspace content volume, since the project
# is running out of a volume.
mutators:
- type: mountPath
from: /home/coder/project
to: labspace-content
docker-proxy-mount-allowlist:
content: |
gates:
- type: mountSource
allowedSources:
- labspace-content
- labspace-socket-proxy
- buildx_buildkit_default_state
- label:labspace-resource=true
docker-proxy-forward-proxied-socket:
content: |
# If requests to use the Docker Socket are used (such as Testcontainers),
# use the proxied one to ensure permissions, remappings, etc. are applied
mutators:
- type: mountPath
from: /var/run/docker.sock
to: labspace-socket-proxy/docker.sock
docker-proxy-add-to-labspace-network:
content: |
mutators:
- type: addToNetwork
networks:
- labspace
services:
workspace:
environment:
HOST: 0.0.0.0
DANGEROUSLY_OMIT_AUTH: "true"
MCP_AUTO_OPEN_ENABLED: "false"
DOCKER_MCP_IN_CONTAINER: "1"
ports: !override
- 6274:6274
- 6277:6277
- 8085:8085
configurator:
environment:
PROJECT_CLONE_URL: https://github.com/dockersamples/labspace-mcp-gateway
configs:
project_source_tar:
content: |
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
services:
configurator:
configs:
- source: project_source_tar
target: /etc/labspace-support/content.tar.base64
environment:
PROJECT_TAR_PATH: /etc/labspace-support/content.tar.base64
docker compose -f oci://dockersamples/labspace-mcp-gateway:latest upUse the above command to pull and run the Compose file. Learn more.