services:
  golang:
    image: golang:${GO_VERSION}
    container_name: ${CONTAINER_NAME}
    working_dir: /app
    volumes:
      - ${CODE_DIR}:/app
      - ./run.sh:/run.sh
      - ./.env:/.env
      - ./mod:/go/pkg/mod
    command: bash /run.sh
    networks:
      - icontainer-network
    ports:
      - ${HOST_IP}:${PANEL_APP_PORT_HTTP}:${GO_APP_PORT}
    env_file:
      - ./.env
    restart: on-failure:5
    labels:
      createdBy: "icontainer"
networks:
  icontainer-network:
    external: true
