Sign inSign up

inspectorgadget12/docker-kl-s4:latest

Manifest digest

sha256:7c91b1b5765ba6d93d2873b0c27493ae405c30dbe0abb4056f3fac798d32ae35

Last pushed

5 months by inspectorgadget12

Type

Compose

Manifest digest

sha256:7c91b1b5765ba6d93d2873b0c27493ae405c30dbe0abb4056f3fac798d32ae35

Compose file content

##################################################################################################
# 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.25.2
    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.25.2
    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.25.2
    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.25.2
    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.25.2
    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:
  configurator:
    environment:
      PROJECT_CLONE_URL: https://github.com/InspectorGadget/docker-basics-labspace-s4

  workspace:
    image: dockersamples/labspace-workspace-base
configs:
  project_source_tar:
    content: |
      H4sIAAAAAAAAA+1bW28cyXXWc/+KkhYwqQl7NMPhRTvAGuDNu4QkiiDpFRbyAlPTXeT0qqe73RdR
      A8uAX/IQwIjzsECAIEAe85hX/x7/geQn5Dunqrqr50JqN1rFa09JkIbTdTuX+s53TjVjOS4yGagn
      D3661kPb392l//v7u333f9se9Hf7+4P+/v7ezt6DXn97e3f/gdj9CfdUt6ooZS7Eg7xKEpWv7nff
      859pi6397YfuTE7jj7sGGXhvZ2eV/fuD7cGc/Xf2+zsPRO/jbmN5+zu3/1SVMpSlHHpCROFQhGnw
      RuX+m9gvdvBVkVZ5oC5Ulg7FTVROqnE3SKdPTpMiU0GZ5l/K8EaVT8yosSyioPCtK+kpgjQpVVJ+
      rfIiSpOheLq30/tc7nheGZWxGopHxzxYPKtkLMXzappVufjLH74Xl6qgEWJnKEyXM1XepvmbKLl5
      5IWqCPIoK3nO91jnuZJ5IibpLa8oI1irwMfptEqiQJaqK16kb5W4ztOpKCdKhOpaVnEpxnkEGUSi
      5xZlKgL4RDrFlOa7QtxCdDGuorj0o0Qcn11uCZmE+DpXospEchMl7/ibCxVGhZD4K3IlY4Hxfr0d
      IbOs63kFNIddF6RyX1gtNLKJQ1bjIzyutXcuy8lQ9HtQqW92ZbTdnYateY5481ZVhfiFOKrXx8aX
      zdqnWbXQdvLFae0kfpn6zYxHtX4h0bK5t3nuenDg9qc1oI38bRQoow1yQWiJJ6ryeCgmZZkNnzyJ
      00DGk7Qoh097T3v82OzswPSOAnKEWCbe//eR+lm1Gv9XecFHWOMe/N/rA/Nr/B/sA//3dvHfGv8/
      QftM/M9//Olf//vPfxL3AIfnmQ41KBZpDDwlKI2jaVTykRaztBLfoaMADgbA21zhRDuAjC5SdDoV
      jr0PBMaX4RwCdzoikAnBZzAR/E+KNXIxnolETtWWSNJSL4FvTs+7NjjAQIDdRESAnzwB9mLTgtAF
      z8qJLDEj77hotsMTYlAFubB9QEw8A0D7vu95n30mjrCHkgBZzikHuqBHCg9s2KCxEGU0nQG+6PyM
      hp43Go0A0hNPh8emrx5cd6V+nmdiqojK1SMj02du6FmKzSuM3KDAM9L6HIkwj0h4iqUFBBVVEqo8
      npFEpQomSRqnNzMKVovhcAvRrlwMe65yUpyHgNVz1JgXJjnDUp53iVNVUvibMz78IzcB1kq1KC5M
      KfxQ+D7Zx9jQl/Sz0UMtv5BxhrlFESuVicFer6c18iETjn/IhGfgFRkJO7KjR5pK2J/liBXd6Rg/
      7XQW5VLvVNCIw9P5gRjUG6r3nsWS3PhdCWdHzMxmPsxRpol3fnr2ZbP/zf7+drf/tNvrDh4Pxe6e
      ICYHG5Sq8PZ29Ae9y6bjEMN/+0VPlGX8BfqU0VR90ev2twdiet+g/tyg3tP9+wdtzw/6fIcGaZeH
      izGUGJ09BBj98z+ZAw1fbh1lc3xD1wIga+S7QZrndCyABp53lc9wEjAWI9CtUHfbYbxoB6l3Zz3d
      HHpxivUZ5BahUMZFKrI8fRuFOIa2X9c9GfD9MLq+BiAmZTMQSLdRuiyVVGGO4n3nQq+jQseNDZKu
      8GHSDDTWcmM5ahjxyM44ciBy83YSAYMjlmARKB6v0G69uVXavcvLacxQjGUoZBjC7oXYsIM3zOhm
      q0S7HWkkKPlyXdPxhAAzo/RCKSe8dMXVBDLib5beqvy6AvekWEahqFA3U5qJsQs4ERv+igjIkWVL
      XKcktpxmMZCTu9FJhFKUVlw80/FMjmOTgdi5Gk3rwFYb4xauVAP/ctyVToSGXV/AKhF2UIdwzztw
      DEmSjOEbZYmNwDAYMU1zCuB4kCZ1/O3aJVx/QOcPC21maIOndo4GRku4obzBpn6s69SwkWA2sqqz
      Ue2nY9i0NnxjWkoOofiNkIMavEs8usGwWzl75CiKyYL27kJMrVKthMYZCsckJnLTbi1WvFDTMU79
      JMoQCuFo+hDZOaSz2ljFaXKDGJwuqsOGeycCwtNAVcTG7373XQFBu2bBS1XS+oX9ufj97zfEe5HN
      ykmaDIQ/FdS9W6Zp3Aa3o1jJpMoWoWYq/Otm4Ros2+Zc4QUYPMdQ7HLA9/+aI1PioooVyY/kecpq
      87x+F4H0IIZhCgGqOEcYClBEMntC+I6DhdO1FJv4WLIB2zl44W3T/A44g4eGc1zT5KUmluv1UjGR
      eRikIZzz9NyCE4LtgOY7XoScL5pgYOZog0MxSas4JDQaKysDU7XaUwo9IqvGQB3/WgbkZYg072be
      Di36MlFzZ/y7FKFvKpPZvLpIkSWdBKjaKKg+atar4agqwUAFEXFagc1DrF3qcQBrinIyYLbJ5HBV
      mcNCZBcW//4/1yn5X21r8v/ltaWPscZ9+f9gZ3s+/x/0Buv8/1M0guQ//stigdUUIT3vlYpBTxWB
      RqdzV0m203koLlNxDW1SjH2rmK462R9gyaHGh1WpscNBi4LZ21SCRKfXomNjb8edhZBMils1NjFp
      Cz9ZPKXPAbEbw/VkyVDGaYKMubbbZnySMuZb3a+WHEiHwIH4fjhjQFaIDdhOLTvzwtsojhGwffFr
      SqrhQ+hE9KLOXWwoskiuGZkvTOVgLqJxqKrRuIHSmzytMh5miJWjiaqg3eoSBphCqSTvsxWYfETX
      ZDlKF4FKZB6lTXD+qt6/6wivNJV8RYHBPI30glzy2KJkS1c0CpgEFsFKTWLUKq2IEzyeOeKRJslL
      qGbu8FJio5AEyi9UM9cmVERPmJbzgo+7TEGmCpwoCr2bXGYTcXXM9eCv0qJ8/Q3FzheYF6t9C/b0
      y/dZmoOdwucg2ntx+Lpde/qWhx5ST3HUf93Q64PWk23nyWHrycB5cvSt5j7Po6JkR6olMWqcILpr
      QcLVjDou7s+Xzk6uXr28eCZOj2kr4uzgxQl/EMcXp1+fXNCny6OX5yeeHAfI9OGaO7t7+NII3/rE
      lXZPd0H3/aef40uqvOsZm0+6I57Xk+LLhAzELani2O2oaSDVR3gpw0lc0ubmH07WTO4FWrN4gMXb
      SDreLjapZNVBEtVpaoXLc1beB0ni7MI5GCB5yvAuFneqHQiH2holjKjeAN65+TxKqnec4elZSQEN
      XXRQRVJpKRabyCwxzh71x83pu8Imjs0+D7U56nLj0moaEbAUIlOOEF3PdEb4gTW15kZG/qgSWjN+
      vGq8rWfecddGoMnUG32ivIVc99dA9VzmiKXpG4ZQLmM0/jMS5rKNgg89g75AZ7sCwLABa1ANgHNF
      R60xjqsKNb3V+5IA/ptkjvOLzQJhEbwYao+jN1iWK1/73V532xQl6i8GI0Iqm/vWJRhHibaY6Nhl
      pGuJp+crK4muEZtcuVl1sch2ev6QAy9tw5yRHzS3s+MfVcVxxptCzi/F64enL85fXlwdnF19ix9f
      akN1Ost9ptPZat3vyoSqJqsuC/gccvmFhbcb6bYtGUxkghUUBycqU7oroA8dvqaIcDuZcQjSuRs2
      Ku/LU7noZKuDdURsipqVLSa1BVspVfdD03fXiAums1OcU0Q8p/yyYGe+UNfY1YTScJwSnG5sI5yJ
      N1RskWMCHI6hWTNic+Rno8f6yiBWRKmqhhR1oK+OvprQaSUcrg3wcgEWciczbaplhMVdvV1n8axK
      QBvo3mOSxpTggjHd8Mlt2CYX6G6RuvPVRy6vr6F+nlhqhGeJcC7dwgx9N1zCL55f6ICfp7dgoEwq
      2rfT75l71CSkRTveN8HtdXOn/ptkkzs87T1+ZEjDKwPupNqtdoDaKPR+bWVRBgFRUyotEndiT2lf
      uiyUFXR4YpFZtWMjDBCUCgd6DhLIj3EqYnJeWqM7V8h5Br++km+UxAHwvKvVQD/hNyKaa8IhBUfy
      /zE6KOWmCV0OhPWpgJDzVJkzAA4aTN/VO8mhmGn8TOO6Lu8lAKXuuvZwZ2vy/3ve1Pg/rHFf/t+b
      v//fxp/eOv//FI1O8vd/bFDpjtd7QLMY3Kke6KbLK6uCNsMc0rU8qDG/JdVk7oiOnKJTNTNSFGl/
      WyHYFhqIOx1+l4rfBgDAN/FX8nUZoCFDyqjyxFQEAOf03lFYX/kjX2C4p8nGElHRPMMutzTpI5My
      ay5c/Gkz8oMc3L8Eiaxy9WHBwCA5xQGWmDto2evH8PLPed8mor+H8BCWu/I/RTXWC9gqujCtmZJa
      MwrS2RRrxN+O9AsRBv3bGLrFiQplP7Qbn9JhUyVBVw6Im8i6wlQVVJq2JZSxMmXoVsyhtGfEu7pr
      RXFwdqwv11rr1bqqXw2g1RsLXJZIKfpDWzSheeuc6O6XK5bePvB020Oh0yn2L5tb6Rf3zN5H9qKr
      yUnPzGZN6YCNBx0ZEqgppnIu+ezVdTxbmYr9ht540+kUW8x+YVmQuUCjb/n5cN/XqZYWCqf0OgLP
      Y2plXHlxraxwXxHhuEty1GkOJU08OzgxczSwAodQNOzLoQjsITWz5i7LWEetxe6cBQZD8bXKkbIa
      rePvRa24+g2SK2XKJuZOkdiA4WylmkII2SolLaE5KzQfESUjgryg6raa9Y9+EEfCn5ijxrqk5DGv
      96U9mSV5KOiKHVikbhmkwFLcRPby5Erc5ErxTeGjr1Qcp1qiZ88fPmon3V86XdtPnp18cyk6+ruT
      d62XhRR+XOLwO9bhNQgZRV2SouYKDLpDS67aiFsW2lvHoEjrW3LtNXQoFpzmQ44A4oJB7tXHwM8Y
      LMCy+Ufe7tA9Ey25d4fCnpFDgnsn66Ar2RPKq16WnOj8yt661xqwd/IspT6edyfMzf6bdNnxmXoF
      PZezgnmvxUizfHI9qJm4XkxPfjhXwrj7/TnjAHWGtYh2c4rcGwq3mPMrquw1nqMUF7ac5d1S7uj+
      dwZsQacF2VzRkeXqgo65TG1VcWzk4+pLraPRiloOQV5dG8fi5s2N2gWuoxtxy/CeK77YBb3RKwwp
      fo/EZrtuyG5MS0el8+oSHZfHDLOkJUtEGkwrPjib104wZ/rVN/BLI+Bf/v0fnYsM0LsMCbt6qFN9
      yvCdzP24NSX5Xv1yCl1LoEeV8RUITXpH8md5RFFljB2NxigDtDfTc1memXa+UjDHKpbc22sruNcO
      dqq5NHLhdS3eSjuE/cA3tsxK3/D9EMzV/G7APxjrySBPC+KwXGQO5+TxPLpi0zcc8H1rqF23TC0z
      jEjUQ1vCxE7GFKyiqbxRxZZ4i8x5Sh/IhPM0nbkzm5y93sdDuPeSVyTc+/t/+8M6h/6bbTgF3wGI
      fspf//thv//H9//b/d3B+vf/PkWz9r84OTh+cfKRXviYa/fUf3qD/rz9Bzvb69//+yTtM4cOUIw5
      1/4gjvmGM81nxPBsB3DRPIjoyuQ6ReSiCLlIEvRrCVmufP7NAROYxCYHwi0dB7fMpeHjLhJT80uG
      COb0HiAV//VFgUBEV7ocDC41jYhNpZlKCn2Zh2ga2k2uq7zrtm7rtm7rtm7rtm7rtm7rtm7rtm7r
      tm7rtm7L2v8CbRwWFgBQAAA=

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 commands

docker compose -f oci://inspectorgadget12/docker-kl-s4:latest up

Use the above command to pull and run the Compose file. Learn more.

Images used

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

3 months

Image


Pulls

10K+

Stars

0

Last Updated

8 months

Image


Pulls

8.3K

Stars

0

Last Updated

3 months