SSH代理从Mac OS转发到Docker Alpine容器

好吧,对于几个项目,我需要访问我的私人存储库,所以我想转发主机的SSH代理到容器,以允许从这些私人存储库中检索。 最终我想在docker-compose中实现这个。

我发现了很多答案和解决scheme,指出这样的事情:

docker run --rm -t -i \ -v $SSH_AUTH_SOCK:/ssh-agent \ -e SSH_AUTH_SOCK=/ssh-agent \ alpine:3.6 sh 

但是当我在那里运行ssh-add -l (在确认openssh安装之后)

我得到以下错误:

连接到代理时出错:连接被拒绝

也试过这在我的docker组合设置,但它似乎并没有像它应该的工作。 由于大多数post和解决scheme都是几年之久,所以我希望有人能够帮助我获得准确的最新信息。

您可以挂载文件,但不能套接字 – 通过pipe理程序在MacOS之间共享套接字到docker容器是不受支持的东西。 各种错误报告和确认存在,有一天它应该工作。

所以在此期间,你需要有一些转发容器和MacOS之间的networkingstream量。 人们指出的解决scheme之一是docker-ssh-agent-forward 。

一个不同的解决scheme是在一个容器中运行ssh-agent,并从MacOS和其他容器访问它 – 这可能是一个更有侵略性,但工作。 一个解决scheme是docker-ssh-agent 。

Interesting Posts