我正在设置一个gitlab omnibus容器,我正在尝试通过创建一个脚本将SSH转发到容器中,该脚本将每个命令代理到容器中。
\home\git\gitlab-bash\bin\gitlab-bash
中包含以下指令的文件:
#!/bin/sh
# Proxy SSH requests to docker container
sudo docker exec -i -u git gitlab.web.1 /bin/sh -c "SSH_CONNECTION='$SSH_CONNECTION' SSH_ORIGINAL_COMMAND='$SSH_ORIGINAL_COMMAND' $0 $1"
这在开始时运行良好,但是当我更新gitlab docker镜像时,它开始触发以下错误:
/bin/sh: 1: /home/git/gitlab-shell/bin/gitlab-shell: not found
但是,如果我使用git用户在ssh中执行命令,它运行正常。
我尝试了-t
选项,但没有运气,我有
the input device is not a TTY
host和gitlab中的git用户拥有相同的uid& GID
git用户(主机)在gitlab数据目录中有它的主目录,以便authorized_keys可以工作。
我正在使用密钥验证。