Ctrl K
ComunidadGuías…

docker-compose.dev.yml

Rama master · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
services:
  server:
    image: server:${SHELLHUB_DEV_IMAGE_TAG:-latest}
    build: &server-development-build
      context: .
      dockerfile: server/Dockerfile
      target: development
      args:
        DOCKERHUB_MIRROR: ${DOCKERHUB_MIRROR:-}
        GOLANG_VERSION: ${GOLANG_VERSION}
        ALPINE_VERSION: ${ALPINE_VERSION}
        AIR_VERSION: ${AIR_VERSION}
        GOLANGCI_LINT_VERSION: ${GOLANGCI_LINT_VERSION}
        MOCKERY_VERSION: ${MOCKERY_VERSION}
        DOCKER_VERSION: ${DOCKER_VERSION}
        MJML_VERSION: ${MJML_VERSION}
    volumes:
      - ./server:/go/src/github.com/shellhub-io/shellhub/server
      - ./pkg:/go/src/github.com/shellhub-io/shellhub/pkg
      - ./openapi:/go/src/github.com/shellhub-io/shellhub/openapi
      - ./tests:/go/src/github.com/shellhub-io/shellhub/tests
      - ${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock
      - ./.golangci.yaml:/.golangci.yaml
      - ./.mockery.yaml:/go/src/github.com/shellhub-io/shellhub/.mockery.yaml
      - ./go.sum:/go/src/github.com/shellhub-io/shellhub/go.sum
      - ./install.sh:/go/src/github.com/shellhub-io/shellhub/install.sh
      - ./versions.env:/go/src/github.com/shellhub-io/shellhub/versions.env
    environment:
      - TESTCONTAINERS_DOCKER_NETWORK=${SHELLHUB_NETWORK}
      - TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}
      - SHELLHUB_EDITION=${SHELLHUB_EDITION}
      - SHELLHUB_ENV=${SHELLHUB_ENV}
      - SHELLHUB_TELEMETRY=false
      - SHELLHUB_GEOIP_DATABASE=${SHELLHUB_GEOIP_DATABASE:-fake}
      - SHELLHUB_GEOIP_UPDATE=${SHELLHUB_GEOIP_UPDATE:-false}
      - SHELLHUB_ACME_CA_SERVER=https://acme-staging-v02.api.letsencrypt.org/directory
  ui:
    image: ui:${SHELLHUB_DEV_IMAGE_TAG:-latest}
    build:
      context: .
      dockerfile: ui/Dockerfile
      target: development
      args:
        DOCKERHUB_MIRROR: ${DOCKERHUB_MIRROR:-}
        NODE_VERSION: ${NODE_VERSION}
        ALPINE_VERSION: ${ALPINE_VERSION}
        SWS_VERSION: ${SWS_VERSION}
        REDOCLY_VERSION: ${REDOCLY_VERSION}
    environment:
      - PUBLIC_SHELLHUB_VERSION=${SHELLHUB_VERSION}
      - PUBLIC_SHELLHUB_DOMAIN=${SHELLHUB_DOMAIN}
      - REDOCLY_VERSION=${REDOCLY_VERSION}
    volumes:
      - ./ui:/src
      - ./openapi:/openapi:ro
  openapi:
    image: openapi:${SHELLHUB_DEV_IMAGE_TAG:-latest}
    build:
      context: .
      dockerfile: openapi/Dockerfile
      target: development
      args:
        DOCKERHUB_MIRROR: ${DOCKERHUB_MIRROR:-}
        GOLANG_VERSION: ${GOLANG_VERSION}
        AIR_VERSION: ${AIR_VERSION}
        GOLANGCI_LINT_VERSION: ${GOLANGCI_LINT_VERSION}
        REDOCLY_VERSION: ${REDOCLY_VERSION}
        PRISM_VERSION: ${PRISM_VERSION}
        PRETTIER_VERSION: ${PRETTIER_VERSION}
    volumes:
      - ./openapi:/go/src/github.com/shellhub-io/shellhub/openapi
      - ./pkg:/go/src/github.com/shellhub-io/shellhub/pkg
      - ./.golangci.yaml:/.golangci.yaml
    environment:
      - SHELLHUB_EDITION=${SHELLHUB_EDITION}
    networks:
      - shellhub
  test:
    image: server:${SHELLHUB_DEV_IMAGE_TAG:-latest}
    build: *server-development-build
    profiles:
      - tools
    entrypoint: []
    network_mode: host
    working_dir: ${SHELLHUB_WORKSPACE}/shellhub
    volumes:
      - ${SHELLHUB_WORKSPACE}:${SHELLHUB_WORKSPACE}
      - ${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock
      - tools-cache:/cache
      - ${SHELLHUB_LICENSE_FILE:-/dev/null}:${SHELLHUB_LICENSE_FILE:-/run/no-license}:ro
    environment:
      - GOCACHE=/cache/go-build
      - GOMODCACHE=/cache/go-mod
      - GOFLAGS=-buildvcs=false
      - npm_config_cache=/cache/npm
      - TESTCONTAINERS_RYUK_DISABLED=true
      - TESTCONTAINERS_HOST_OVERRIDE=localhost
      - TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}
  e2e:
    image: shellhub-e2e:${E2E_PLAYWRIGHT_VERSION:-latest}
    build:
      context: ui
      dockerfile: e2e.Dockerfile
      args:
        - DOCKERHUB_MIRROR=${DOCKERHUB_MIRROR:-}
        - DOCKER_VERSION=${DOCKER_VERSION}
        - PLAYWRIGHT_VERSION=${E2E_PLAYWRIGHT_VERSION:-}
    profiles:
      - tools
    network_mode: host
    working_dir: ${SHELLHUB_WORKSPACE}/shellhub/ui/apps/console
    volumes:
      - ${SHELLHUB_WORKSPACE}:${SHELLHUB_WORKSPACE}
      - ${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}:/var/run/docker.sock
    environment:
      - NPM_CONFIG_UPDATE_NOTIFIER=false
      - E2E_DOCKER_SOCKET=${SHELLHUB_DEV_DOCKER_SOCKET:-/var/run/docker.sock}

volumes:
  tools-cache:
    name: shellhub-tools-cache