cloudflare tunnel 开机不自启,是哪里的问题

162 天前
 ttut
openwrt 安装的 cloudflare tunnel ,openwrt 重启后 cloudflare tunnel 不自启,是 down 状态。
只有在 ssh 手动执行以下其中一个命令
cloudflared tunnel run [Tunnel name 或 Tunnel ID]
nohup cloudflared tunnel run [Tunnel name 或 Tunnel ID] >/dev/null 2>&1 &
cloudflare tunnel 就正常,才是 HEALTHY 状态。
尝试过在 openwrt 启动项和计划任务里加入上面的命令,但是也不行。
1464 次点击
所在节点    程序员
16 条回复
geekvcn
162 天前
#!/bin/sh /etc/rc.common
START=99
start(){
nohup cloudflared tunnel run [Tunnel name 或 Tunnel ID] >/dev/null 2>&1 &
}

stop(){
kill -9 `ps |grep cloudflared|grep -v grep|awk '{print $1}'`
}

restart(){
stop
sleep 1
start
}

把上面的内容写入到/etc/init.d/cloudflared
chmod +x /etc/init.d/cloudflared
service cloudflared enable
ttut
162 天前
@geekvcn #1 还是不行,不知道是不是这样加
#!/bin/sh /etc/rc.common

USE_PROCD=1
START=99

start(){
nohup cloudflared tunnel run [Tunnel name 或 Tunnel ID] >/dev/null 2>&1 &
}

stop(){
kill -9 `ps |grep cloudflared|grep -v grep|awk '{print $1}'`
}

restart(){
stop
sleep 1
start
}


CONF="cloudflared"
PROG="/usr/bin/cloudflared"

append_param_arg() {
local value
config_get value "config" "$1" $2
[ -n "$value" ] && procd_append_param command "--$1" "$value"
}

start_service() {
config_load "$CONF"

local enabled
config_get_bool enabled "config" "enabled"
[ "$enabled" -eq "1" ] || return 1

procd_open_instance "$CONF"
procd_set_param command "$PROG" "tunnel"
procd_append_param command "--no-autoupdate"

append_param_arg "config" "/etc/cloudflared/config.yml"
append_param_arg "origincert" "/etc/cloudflared/cert.pem"
append_param_arg "region"
append_param_arg "loglevel"
append_param_arg "logfile"

procd_append_param command "run"
append_param_arg "token"

procd_set_param respawn
procd_set_param stderr 1

procd_close_instance
}

reload_service() {
stop
start
}

service_triggers() {
procd_add_reload_trigger "$CONF"
}
flynaj
162 天前
原版你直接安装 luci-i18n-cloudflared-zh-cn ,在 Web 界面配置就行,不需要你改它的脚本,
flynaj
162 天前
也可以直接编辑配置
文件在 /etc/config/cloudflared
config cloudflared 'config'
option enabled '1'

这样才会运行
sky96111
162 天前
cf tunnel 生成的 rc 启动脚本在 op 里有兼容性问题,你比对一下格式就知道了。要么用 luci 那个包,要么动手改一下启动脚本
ttut
162 天前
@flynaj #3 可能我的 openwrt 版本不兼容,我试过装 packages-23.05 和 packages-22.03 里的(packages-22.03 以下就没有 cloudflared 了)
luci-app-cloudflared_1.2_all.ipk
packages-23.05:luci-i18n-cloudflared-zh-cn_git-24.137.59920-b342a45_all.ipk
packages-22.03:luci-i18n-cloudflared-zh-cn_git-24.137.60246-95611b9_all.ipk
但在 openwrt 的 web 页面不出现 cloudflared 相关配置。
ttut
162 天前
@flynaj #4 按这个修改过,也不自启
photon006
162 天前
docker 运行
ttut
162 天前
@flynaj #4
@sky96111 #5
@photon006 #8
感谢各位大佬的回复,我再折腾下看,实在不行考虑换 openwrt 版本
fanersai
162 天前
我是 docker 跑
tsanie
162 天前
@ttut #6
装了后不在 Servicse 里,在 VPN 里。
ttut
162 天前
@tsanie #11 我也看过,都没有。
ttut
162 天前
@tsanie #11 你这个是原版 openwrt 吗?安装的 cloudflared 、luci-app-cloudflared 、luci-i18n-cloudflared-zh-cn 又是哪个版本呢?
我现在安装的是 2024.6.0 。但 luci-app-cloudflared 、luci-i18n-cloudflared-zh-cn 安装总是出问题
tsanie
162 天前
@ttut #13

是的,原版 23.05.0 。
cloudflared - 2024.4.0-1
luci-app-cloudflared - 1.2
flynaj
162 天前
@ttut #6 ctrl+f5 刷新一下。23.05.3 实测可以正常使用。
ttut
162 天前
@tsanie #14
@flynaj #15
感谢感谢,我再试试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1047513

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX