Connection: via IPv4
Your IP : 44.200.94.150
In English
Categories: LinuxServer

cloudflared起因でサイトがダウンしたときに活を入れる

概要

cloudflared(Cloudflare Tunnel)の再接続で直るタイプの不調でサイトがダウンしたことを検知して、自動的に再接続させる方法について紹介します。

解決策

簡単なスクリプトで監視と再接続を行います。

#!/bin/bash
ENDPOINT="<your-site-url>"
HTTPCODE="$( curl "$ENDPOINT" -o /dev/null -w '%{http_code}\n' -s)"
if [ "$HTTPCODE" = 530 ];then
  # 特権昇格
  [ "$(id -u)" != "0" ] && exec sudo "$0" "$@"
  # 多重起動防止
  exec {lock_fd}< "$0"
  flock --nonblock ${lock_fd} || exit 0
  /usr/bin/systemctl stop cloudflared
  /usr/bin/systemctl start cloudflared
else
  echo "OK"
fi

 

もしTunnel関連のエラーで出る530以外でも再接続させたいときは"$HTTPCODE" = 530! "$HTTPCODE" = 200などにすると良いでしょう。

利活用例

以下の場合などにこのスクリプトは利用できます。

  • cloudflaredで公開しているサーバーが・・・
    • Wi-Fiやモバイルデータ通信を使っていて途切れやすい
    • warpと併用していて不安定になりやすい

This post was last modified on 2023年3月30日 8:05 AM

Share
Published by
おきん(blog)

Recent Posts

media-proxy-rsをビルド・実行する

media-proxy-rsを…

1か月 ago

[メモ]NetboxでEntra ID認証(SSO)[編集中]

[メモ]JellyfinでEn…

1か月 ago

ものぐさのためのXbox Game Pass Ultimate更新節約術

ものぐさ節約家のためのXbox…

2か月 ago

[メモ]JellyfinでEntraID認証

概要 メディアサーバーのJel…

6か月 ago

MastodonでhCaptchaを使う

概要 Mastodonサーバー…

8か月 ago

This website uses cookies.