Runner Registration and CI/CD Timeout Issues in GitLab 17.5.2 with Synology Reverse Proxy or Addressing ERR_CONNECTION_TIMED_OUT in GitLab Runner Setup on Synology

:hugs: Please help fill in this template with all the details to help others help you more efficiently. Use formatting blocks for code, config, logs and ensure to remove sensitive data.

Problem to solve

Describe your question in as much detail as possible:

  • In GitLab Admin Area → CI/CD → when clicking Edit or New Instance Runner, the following error occurs: net::ERR_CONNECTION_TIMED_OUT
    As a result, it is no longer possible to add or edit Runners.
  • When attempting to execute a pipeline using an already registered Runner, the following error is encountered curl: (28) Failed to connect to : Connection timed out
    This issue prevents CI/CD pipelines from being executed successfully.

Goal:

  • Resolve the issue to enable editing and adding new Runners.
  • Fix the connection issue with the existing Runner to ensure CI/CD pipelines function correctly.

Steps to reproduce

  1. Synology Configuration:
  • In Synology Control Panel, set up a reverse proxy with the following settings:
    https://*:20444 → http://localhost:8080
  1. GitLab Runner:
  • Ensure at least one GitLab Runner is registered and ready.
  1. Build and Install GitLab using Docker Compose: Use the following docker-compose.yml file for deployment:
yaml 
version: '3.6'
services:
  gitlab:
    image: gitlab/gitlab-ce:17.5.2-ce.0
    container_name: gitlab
    restart: always
    hostname: 'gitlab_ce'
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        # Add any other gitlab.rb configuration here, each on its own line
        letsencrypt['enable'] = false
        external_url "https://domain.synology.me:24444"
        nginx['listen_port'] = 80
        nginx['listen_https'] = false
        # nginx['redirect_http_to_https'] = true

    ports:
      - '8080:80'
      - '11443:443'
    volumes:
      - '$GITLAB_HOME/volume1/docker/domain-gitlab-ce/config:/etc/gitlab'
      - '$GITLAB_HOME/volume1/docker/domain-gitlab-ce/logs:/var/log/gitlab'
      - '$GITLAB_HOME/volume1/docker/domain-gitlab-ce/data:/var/opt/gitlab'
    shm_size: '256m'
  1. Access GitLab as Admin:
  • Log in with an admin account.
  • Navigate to: Admin Area → CI/CD → Runners → New Instance Runner → Create Runner.

Troubleshooting Steps Taken

  1. Reviewed GitLab documentation for configuring Nginx reverse proxy: GitLab Nginx Settings Documentation.
  2. Attempted to set up an Nginx reverse proxy for GitLab to handle the connection.

Configuration

Provide screenshots from the GitLab UI showing relevant configuration, if applicable.
On self-managed instances, add the relevant configuration settings or changes.

Versions

Please add an x whether options apply, and add the version information.

  • Self-managed
  • GitLab.com SaaS
  • Dedicated

Versions

System Information:

  • System:
    • Current User: git
    • Using RVM: no
    • Ruby Version: 3.2.5
    • Gem Version: 3.5.17
    • Bundler Version: 2.5.11
    • Rake Version: 13.0.6
    • Redis Version: 7.0.15
    • Sidekiq Version: 7.2.4
    • Go Version: unknown

GitLab Information:

  • GitLab Version: 17.5.2
  • Revision: cebb958cb73
  • Directory: /opt/gitlab/embedded/service/gitlab-rails
  • Database:
    • Adapter: PostgreSQL
    • Version: 14.11
  • URL: https://domain.synology.me:24444
  • HTTP Clone URL: https://domain.synology.me:20444/some-group/some-project.git
  • SSH Clone URL: git@domain.synology.me:some-group/some-project.git
  • LDAP: no
  • Omniauth: yes
    • Providers: None

GitLab Shell:

  • Version: 14.39.0
  • Repository Storages:
    • Default: unix:/var/opt/gitlab/gitaly/gitaly.socket
  • GitLab Shell Path: /opt/gitlab/embedded/service/gitlab-shell

Gitaly:

  • Default Address: unix:/var/opt/gitlab/gitaly/gitaly.socket
  • Default Version: 17.5.2
  • Default Git Version: 2.46.2

Helpful resources

  1. Check the Gitlab working with Nginx as Reverse Proxy for helpful documentation, GitLab listening HTTP behind a reverse proxy listening HTTPS issues/bugs/feature proposals, and troubleshooting tips.

Thanks for taking the time to be thorough in your request, it really helps! :blush: