Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

cloudflared を更新する

最終更新 Markdown で表示Agent セットアップ

更新すると cloudflared が再起動し、処理中のトラフィックに影響します。ダウンタイムなしでアップグレードするには、Cloudflare の Load Balancer 製品 を使うか、複数の cloudflared インスタンス を使います。

cloudflared サービスを更新する

リモート管理トンネル または ローカル管理トンネル 向けに cloudflared を更新するには、次のコマンドを参照してください。ローカル管理トンネルでは、次のコマンドが成功するよう、サービスとして実行する設定が必要です。

次のコマンドを実行します。

cloudflared update

cloudflared updatecloudflared を更新したあと、反映するにはサービスを再起動する必要があります。次を実行します。

net start cloudflared
  1. cloudflared パッケージを更新します。
brew upgrade cloudflared
  1. サービスを再起動します。
sudo launchctl stop com.cloudflare.cloudflared
sudo launchctl unload /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl load /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl start com.cloudflare.cloudflared

apt でインストールした場合:

  1. cloudflared パッケージを更新します。
sudo apt-get update && sudo apt-get install --only-upgrade cloudflared
  1. サービスを再起動します。
sudo systemctl restart cloudflared.service

dpkg -i でインストールした場合:

dpkg パッケージマネージャーで cloudflared をインストールした場合は、次のコマンドを使います。

cloudflared がパッケージマネージャーでインストールされたかどうかは、ls -la /usr/local/etc/cloudflared/ を実行し、出力に .installedFromPackageManager があるかで確認できます。

  1. cloudflared パッケージを更新します。
curl --location --output cloudflared.deb "https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-$(dpkg --print-architecture).deb" && sudo dpkg -i cloudflared.deb
  1. サービスを再起動します。
sudo systemctl restart cloudflared.service
  1. cloudflared パッケージを更新します。
sudo yum update cloudflared
  1. サービスを再起動します。
sudo systemctl restart cloudflared.service

ダッシュボードでリモート管理トンネルを作成した場合:

  1. Cloudflare ダッシュボードで、Networking > Tunnels を開きます。

    Tunnels を開く ↗
  2. トンネルを選び、詳細ページを開きます。

  3. Overview タブで、Docker のインストールコマンドをコピーします。コピーしたコマンドにはトークンが含まれます。

  4. このコマンドをターミナルに貼り付けます。

このコマンドは、最新の cloudflared イメージから新しいコンテナーを作成します。古いコンテナーは削除できます。

API でリモート管理またはローカル管理のトンネルを作成した場合は、次のコマンドを実行します。

docker run --pull always cloudflare/cloudflared:latest tunnel --no-autoupdate run --token <TOKEN>

CLI でローカル管理トンネルを作成した場合:

  1. ボリュームを使って、ローカルの .cloudflared ディレクトリを Docker コンテナーにマウントします。

  2. 次のコマンドで cloudflared を更新します。

    docker run --pull always -v <PATH-TO-YOUR-LOCAL-CLOUDFLARED>:/home/nonroot/.cloudflared cloudflare/cloudflared:latest tunnel --no-autoupdate run <TUNNEL-ID>

GitHub 提供のバイナリまたはソースから cloudflared をインストールした場合は、次のコマンドを実行します。

cloudflared update

パッケージマネージャーで cloudflared をインストールした場合は、同じパッケージマネージャーで更新する必要があります。

cloudflared がパッケージマネージャーでインストールされたかどうかは、ls -la /usr/local/etc/cloudflared/ を実行し、出力に .installedFromPackageManager があるかで確認できます。

Cloudflare Load Balancer で更新する

Cloudflare Tunnel の導入に Cloudflare の Load Balancer 製品を使うと、ダウンタイムなしで cloudflared を更新できます。

  1. 新しい cloudflared インスタンスをインストールし、新しい Tunnel を作成します。
  2. 現在稼働中の cloudflared インスタンスと同じ、ローカルで利用できるサービスにトラフィックを向けるよう設定します。
  3. 新しい cloudflared インスタンスのアドレスを、Load Balancer プールに優先度 2 として追加します。
  4. 優先度を入れ替えて新しいインスタンスを優先度 1 にし、トラフィックが処理されていることを確認します。
  5. 確認できたら、古いバージョンを Load Balancer プールから削除できます。

複数の cloudflared インスタンスで更新する

Cloudflare の Load Balancer を使っていない場合は、複数の cloudflared インスタンスを使い、ダウンタイムのリスクなしで更新できます。

  1. 新しい cloudflared インスタンスをインストールし、新しい Tunnel を作成します。
  2. 現在稼働中の cloudflared インスタンスと同じ、ローカルで利用できるサービスにトラフィックを向けるよう設定します。
  3. Cloudflare DNS ダッシュボードで、現在の cloudflared インスタンスのアドレスを新しいインスタンスのアドレスに置き換えます。レコードを保存します。
  4. 非アクティブになった cloudflared インスタンスを削除します。

Windows で複数インスタンスを実行する

Windows では、サービスに一意の名前と表示名が必要です。一意の名前の cloudflared サービスを作成すると、複数の cloudflared インスタンスを実行できます。

  1. cloudflared をインストールして設定します。
  2. 次に、一意の名前のサービスを作成し、cloudflared の実行ファイルと設定ファイルを指定します。
sc.exe create <unique-name> binPath='<path-to-exe>' --config '<path-to-config>' displayname="Unique Name"
  1. 続けて、一意の名前で追加のサービスを作成します。

  2. 各サービスを起動できます。

sc.exe start <unique-name>

役に立ちましたか?