1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

まだ記事にしていませんが、VMware ESXiを構築しました。
ESXi上にサーバを構築し、昔作ったRaspberry Pi上の機能を随時移植しています。
今回はその一環としてWAN用のDDNSサーバをコンテナ化し機能移植します。
(Cloudflareへの登録などは行っている前提です。)

環境

バージョン情報

Dockerは現在最新の物を使用していきます。

コマンド
$ docker -v
Docker version 27.0.3, build 7d4bcd8

ちなみに今回DDNSの機能を移植するに辺り調べていた所、既にコンテナがあることを初めて知りました。
せっかくなのでこちらを活用させて頂きます。

CloudflareにてユーザーAPIトークンの発行

旧環境のDDNSでもそうでしたが、CloudflareではAPIキーによるIPの更新が出来るようになっています。
今回紹介するコンテナでもAPIキーを使用するため発行してきます。

以下のページへアクセスすると、APIキーの管理画面が開きます。

まずは「トークンを作成する」ボタンをクリックします。
キャプチャ.PNG

色々とテンプレートが用意されているようで、今回は「ゾーン DNS を編集する」のテンプレートを使用しました。
キャプチャ.PNG

今回使用するコンテナでは、以下の権限が必要と記載があるため、こちらの権限を付与していきます。

  • Zone - DNS - Edit
  • Zone - Zone - Read
  • Zone - Zone Settings - Read

キャプチャ.PNG

また、「ゾーン リソース」では更新対象のドメインを選択してあげましょう。

キャプチャ.PNG

上記入力後末尾の「概要に進む」ボタンをクリックすると概要が表示され、「トークンを作成する」をクリックするとトークンが発行されます。
ページにも記載がある通り、セキュリティの都合上1度しか表示されないためちゃんとキーをコピーしておきましょう。

キャプチャ.PNG

コンテナの起動

コンテナを起動するだけであれば、以下のコマンドで完結します。

コマンド
$ docker run --detach\
  -e API_KEY=[発行されたAPIキー] \
  -e ZONE=[自分のドメイン名] \
  oznu/cloudflare-ddns
コマンド
$ docker ps
CONTAINER ID   IMAGE                         COMMAND                   CREATED          STATUS                 PORTS          NAMES
d71a48522687   oznu/cloudflare-ddns          "/init"                   10 seconds ago   Up 9 seconds                          mystifying_knuth

オプションを指定しないと5分ごとに確認しに行ってるとのことです。
今回私はAPIキーなどを忘れそうでしたので、docker-compose.ymlで管理しました。

docker-compose.yml
services:
  letsencrypt:
    image: oznu/cloudflare-ddns:latest
    restart: always
    environment:
      - API_KEY=-[発行されたAPIキー]
      - ZONE=[自分のドメイン名]
      - PROXIED=false

最後に

以上でCloudflareによるDDNS用コンテナの構築は完了です!
旧機能はシェルでアクセスしに行くような作りでしたので、コンテナがあったことで大きく時短できました。
先人の方々に日々感謝…。

参考サイト

・oznu/cloudflare-ddns
https://hub.docker.com/r/oznu/cloudflare-ddns/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?