Было у меня такое, проблема была в header "proxy_set_header X-Forwarded-Proto $scheme;" - т.к. было опубликовано через ингресс (nginx). Маттермост с какой то версии (вероятно с мажорной 7ой) обязательно требует "правильную" схему, и при том только при аутентификации. Потом куку прописывает и можно год заходить с "поломанной" схемой.
PS
Ну и звонки у вас работать не будут судя по логам. Вообще логи бы правильно оформлять, тегами code. Хотя бы смотреть приятнее, читабельнее.
Наводящие вопросы:
1. DOCKER_HOST переменная, там адрес какой машины (полагаю одной из кластера докер сворм?)
2. зачем ssh-keygen всякий раз? здесь нужно скопировать уже заранее подготовленный закрытый ключ (например из переменных гитлаба на уровне проекта) к машине из шага 1 (это как минимум).
Когда с этими двумя пунктами будет все понятно, можно будет двинуться дальше.
не очень понял зачем коннектится ещё куда-то по ssh?
gitlab-runner на удалённом сервере инициировал подключение к gitlab-server под определенном пользователем, успешность этого вы должны видеть на gitlab-server в web.
отправляйте те команды которые нужно сделать на сервере где запущен gitlab-runner,
Для этого используются Gitlab-runner, разворачивается на сервере, создается нужный пайплайн, который при коммите в GIT будет делать всё сам.
Гуглить в сторону .gitlab-ci.yml gitlab-runner ci/cd pipelines