Разрешить доступ к личному git-серверу (gogs) в Dockerized Ubuntu - PullRequest
0 голосов
/ 30 октября 2018

Я просто настроил сервер Ubuntu в докере и установил на него gogs .

Казалось, что все работает нормально: Я могу без проблем получить доступ к Gogs через Firefox , создавать репо или добавлять файлы, но когда я пытаюсь git clone репо из него или git push из моего локальный компьютер, я получаю сообщение об ошибке:

fatal: unable to access 'http://xx.x.xxx.xx:8001/username/test.git/': Recv failure: Connection was reset

Некоторые данные:

  • Как видите, у меня нет нужного днс, я получаю к нему доступ через raw ip и порт.
  • Iptables настроен для разрешения tcp ввода / вывода через порт 8001
  • gogs работают как служба init.d
  • Пользователь службы gogs имеет прямой доступ к каталогу gogs_repository

Conf: Ubuntu 18.04.1 LTS, Gogs 0.11.66

UPDATE

  1. Я настроил apache2 как прокси, чтобы иметь возможность доступа к gogs через имя сервера и без указания порта (путем перенаправления запросов на порт 8001). Проблема все еще там.
  2. Мне удалось клонировать репо через SSH, используя полный путь к репо: git clone ssh://user@myserver/home/user/gogs-repositories/gogs-user/test.git, благодаря этому посту

Но проблема все еще существует, когда я пытаюсь клонировать, используя http. Есть идеи?

UPDATE2 : Вот подробная трассировка команды git, которую я запускаю с локального компьютера:

$ git clone http://xx.x.xxx.xx:8001/user/test
14:50:09.131427 exec-cmd.c:236          trace: resolved executable dir: C:/Program Files (x86)/Git/mingw32/bin
14:50:09.132424 git.c:415               trace: built-in: git clone http://10.5.255.28:8001/user/test
Cloning into 'test'...
14:50:09.179300 run-command.c:637       trace: run_command: git remote-http origin http://10.5.255.28:8001/user/test
14:50:09.224179 exec-cmd.c:236          trace: resolved executable dir: C:/Program Files (x86)/Git/mingw32/libexec/git-core
14:50:09.228170 git.c:671               trace: exec: git-remote-http origin http://10.5.255.28:8001/user/test
14:50:09.228170 run-command.c:637       trace: run_command: git-remote-http origin http://10.5.255.28:8001/user/test
14:50:09.280032 exec-cmd.c:236          trace: resolved executable dir: C:/Program Files (x86)/Git/mingw32/libexec/git-core
* Couldn't find host 10.5.255.28 in the _netrc file; using defaults
*   Trying 10.5.255.28...
* TCP_NODELAY set
* Connected to 10.5.255.28 (10.5.255.28) port 8001 (#0)
> GET /user/test/info/refs?service=git-upload-pack HTTP/1.1
Host: 10.5.255.28:8001
User-Agent: git/2.19.1.windows.1
Accept: */*
Accept-Encoding: deflate, gzip
Pragma: no-cache

* Recv failure: Connection was reset
* Closing connection 0
fatal: unable to access 'http://xx.x.xxx.xx:8001/user/test/': Recv failure: Connection was reset
...