gpt4 book ai didi

docker - SSH隧道到远程docker服务

转载 作者:行者123 更新时间:2023-12-02 14:18:32 25 4
gpt4 key购买 nike

我有一台服务器,它通过docker-compose运行了几个Docker服务。数据库服务如下所示:

myproject_influxdb:                                    
container_name: myproject_influxdb
image: 'influxdb:alpine'
volumes:
- '/var/lib/influxdb:/var/lib/influxdb'
- './influxdb.conf:/etc/influxdb/influxdb.conf'
ports:
- '8086:8086'

可以通过 myproject_influxdb:8086从其他容器中访问它。

现在,我想从本地docker服务连接到该数据库。我在新终端中运行 ssh -L 8086:localhost:8086 user@host。然后我尝试连接到远程 myproject_influxdb服务,但是无论我输入什么主机( localhostmyproject_influxdb0.0.0.0),我都会遇到相同的错误: [Errno 111] Connection refused

是因为远程服务和主机服务均未使用 network_mode: "host"吗?

最佳答案

docker-compose服务与标准docker run容器位于不同的网络上。

这就是myproject_influxdb无法正常工作的原因。如果您位于docker容器中并尝试使用localhost访问内容,则您位于同一容器(而不是主机)内。话虽如此,您可以通过主机上的暴露端口访问influxdb

host_ip:8086

要获取主机的IP地址,可以使用此bash命令
/sbin/ip route|awk '/default/ { print $3 }'

关于docker - SSH隧道到远程docker服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48708220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com