Could not resolve host: git

1.5k views Asked by At

I've seen Gogs + Drone getsockopt: connection refused but I wonder whether something has changed.

My docker-compose.yml

  git:
    image: gogs/gogs
    ports:
      - '8300:3000'
      - '443:443'
      - '8322:22'
    volumes:
      - 'gogs-data:/data'
    depends_on:
      - database
    labels:
      - 'traefik.backend=git'
      - 'traefik.port=3000'
      - 'traefik.frontend.rule=Host:git.drone.localhost'

  drone-server:
    image: drone/drone:0.8

    ports:
      - 8000
      - 9000
    volumes:
      - drone-server-data:/var/lib/drone/
    environment:
      - DRONE_OPEN=true
      - DRONE_HOST=http://drone-server:8000
      - DRONE_SECRET=SECRET
      - DRONE_GOGS=true
      - DRONE_GOGS_URL=http://git:3000
      - DRONE_GOGS_SKIP_VERIFY=true

After changing the webhook of my repo in gogs to http://droner-server:8000 I can see drone starting the execution. But it fails cloning the repo:

+ git remote add origin http://git:3000/gituser/repo.git    0s
+ git fetch --no-tags origin +refs/heads/g2:    0s
fatal: unable to access 'http://git:3000/gituser/repo.git/': Could not resolve host: git
1

There are 1 answers

4
user1505520 On
  1. Don't forget the version tag at the top
  2. Containers in a docker-compose file cannot access the ports of other containers unless they are the same network. Port 3000 of the git container is where gogs is listening but it is mapped to port 8300 on the host. You could add a bridge network like so:

docker-compose.yaml

    version: '3'
    services:
      git:
        image: gogs/gogs
        ports:
          - '8300:3000'
          - '443:443'
          - '8322:22'
        volumes:
          - 'gogs-data:/data'
        networks:
          - my-net
        depends_on:
          - database
        labels:
          - 'traefik.backend=git'
          - 'traefik.port=3000'
          - 'traefik.frontend.rule=Host:git.drone.localhost'
      drone-server:
        image: drone/drone:0.8
        ports:
          - 8000
          - 9000
        volumes:
          - drone-server-data:/var/lib/drone/
        networks:
          - my-net
        environment:
          - DRONE_OPEN=true
          - DRONE_HOST=http://drone-server:8000
          - DRONE_SECRET=SECRET
          - DRONE_GOGS=true
          - DRONE_GOGS_URL=http://git:3000
          - DRONE_GOGS_SKIP_VERIFY=true
    networks:
      my-net:
        driver: bridge