snowdreamtech/frp

同样的 frpc.toml 放docker里就运行不了

Closed this issue · 5 comments

每次都请求127.0.0.1 然后docker cp出来文件没有问题

frpc:
container_name: frpc
image: snowdreamtech/frpc
restart: always
volumes:
- /mnt/nvme1/common/frp/frpc.toml:/etc/frp/frpc.toml
environment:
- TZ=Asia/Shanghai
network_mode: "host"

frpc.toml
serverAddr = "xxxxxxxxxxxxx"
serverPort = 7001

[[proxies]]
name = "pal1"
type = "udp"
localIP = "127.0.0.1"
localPort = 8211
remotePort = 8211

[[proxies]]
name = "pal2"
type = "udp"
localIP = "127.0.0.1"
localPort = 27015
remotePort = 27015

我把 serverPort 改了几次,发现docker 都会请求7000,因此我觉得程序并没有访问 /etc/frp/frpc.toml

但是我看dockerfile,确实用的 ENTRYPOINT /usr/bin/frpc -c /etc/frp/frpc.toml
就不知道问题在哪了

我再docker compose 里增加entrypoint
entrypoint: ["/usr/bin/frpc", "-c", "/etc/frp/frpc.toml"]

会提示

invalid configuration file, not found [common] section
invalid configuration file, not found [common] section
invalid configuration file, not found [common] section
invalid configuration file, not found [common] section

根据最新的示例 已经没有common了

serverAddr = "127.0.0.1"
serverPort = 7000

[[proxies]]
name = "test-tcp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000

docker compose 指定版本貌似可以了。
snowdreamtech/frpc:0.57.0

注意检查docker镜像版本。有些镜像网站,会拉取旧版本的docker镜像。
使用tag拉取,可以运行,说明latest拉取回来的,是旧的镜像。
你可以检查一下。