首页 > 解决方案 > 在 gitlab.com(公共版本)中运行 docker-compose 时使用哪个主机名

问题描述

我不知道要使用哪个主机名来访问在 Gitlab.com 上的 docker-in-docker 服务中使用 docker-compose 启动的容器?

我的.gitlab-ci.yml

image: docker/compose

stages:
  - test_api

services:
  - docker:dind

variables:
  DOCKER_DRIVER: overlay2
  DOCKER_HOST: "tcp://docker:2375"


before_script:
    - docker info
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker-compose down
    - docker-compose up -d

test_api:
  stage: test_api
  image: stoplight/prism:latest
  script:
    - apk add curl
    - curl 127.0.0.1:4010/pets -XGET

我只是不知道应该在使用 curl 发送获取请求的 URL 中将主机名设置为什么?既不工作docker也不localhost工作,服务器不可用。

和 docker-compose.yml:

version: '3.3'

services:
  prism:
    image: stoplight/prism:latest
    command: >
      mock -p 4010 --host 0.0.0.0 
        https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.yaml
    ports:
      - "4010:4010"
    restart: always

标签: dockerdocker-composecontinuous-integrationgitlab

解决方案


推荐阅读