У меня поднят docker-compose, в котором крутятся nginx (слушает 80 и 222 порты) и gitea(дефолтные порты 22 и 3000, наружу не открыты)
Получается склонить репозиторий только по http, по ssh он просто его не находит. Сразу скажу, ключи добавил и проверил - все корректно, как я подозреваю, ошибся в проксировании запросов к ssh gitea
docker-compose.yml:
services:
nginx:
image: nginx:1.23-alpine
container_name: nginx
restart: unless-stopped
ports:
- 80:80
- 222:222
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/nginx.conf:ro
- ./.lego/certificates:/certs:ro
- ./web:/web:ro
depends_on:
- gitea
gitea:
image: gitea/gitea:latest
restart: always
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
environment:
- USER_UID=1000
- USER_GID=1000
В nginx.conf
server {
listen 80;
server_name git.domain-name.xz;
location / {
proxy_pass http://gitea:3000/;
}
}
server {
listen 222;
server_name git.domain-name.xz;
location / {
proxy_pass http://gitea:22;
}
}
И app.ini от Gitea
[server]
APP_DATA_PATH = /data/gitea
DOMAIN = git.domain-name.xz
SSH_DOMAIN = git.domain-name.xz:222
HTTP_PORT = 3000
ROOT_URL = http://git.domain-name.xz/
DISABLE_SSH = false
SSH_PORT = 22
SSH_LISTEN_PORT = 22
LFS_START_SERVER = true
LFS_JWT_SECRET = some_secret
OFFLINE_MODE = false
Так как базовый 22 порт занят использую 222.
При проверке репозитория получаю ошибку
ssh: Could not resolve hostname git.domain-name.xz:222/author/repository.git: nodename nor servname provided, or not known
А если пробую запушить репозиторий по ssh, то запрашивается пароль и ошибка следующая:
Received disconnect from
99.99.99.99 port 22:2: Too many authentication failures
Disconnected from
99.99.99.99 port 22
Ломится ssh на правильный айпишник, но порт отображается 22, хотя origin указан на 222
origin git@git.domain-name:222/author/repository.git (fetch)
origin git@git.domain-name:222/author/repository.git (push)
Подскажите, где я совершаю ошибку, что необходимо мне сделать для того, чтобы уже спулить репозиторий с 222 порта по ssh)