如何解决Docker:SSH 进入共享其他容器网络空间的 sidecar
目前我有一个容器(即:main)为一些关键应用程序提供服务,并附加了一个 sidecar 容器来使用主容器的 pid 和网络空间调试主容器。类似于以下内容:
docker run --name main -v container/logs:/logs -p 8443:443 -d main_container:latest
docker run --pid=container:main --net=container:main -d alpine_sidecar:latest
现在我计划向 sidecar 容器添加 SSH 访问权限,为此,我遵循了以下选项,但没有一个对我有利。
- 暴露 SSH 端口
# docker run -p 4422:22 --pid=container:main --net=container:main -d alpine_sidecar:latest
docker: Error response from daemon: conflicting options: port publishing and the container type network mode.
- 添加其他网络
docker network connect <network-name> <container-id>
Error response from daemon: container sharing network namespace with another container or host cannot be connected to any other network
- IPtables(放弃了,因为它需要容器 ip 进行转发)
iptables -t nat -A DOCKER -p tcp --dport 4422 -j DNAT --to-destination <container-ip>:22
有没有办法实现SSH进入sidecar。感谢您的时间和帮助!谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。