3
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?

IBM CloudAdvent Calendar 2024

Day 20

CISにドメインを登録する

Last updated at Posted at 2024-12-20

はじめに

この記事では、IBM Cloudのソリューション"Cloud Internet Services"(以下CIS)を初めて使う人向けに、ドメインの取得から証明書発行、CISへのドメイン登録方法をStep by stepで説明するものです。Code Engineにアプリケーションをデプロイしてドメインマッピングの設定を行い、取得したドメインを使ってアクセスしてみます。

手順

  1. ドメインを取得 (すでに取得している方は飛ばして大丈夫です)
  2. ドメインをCISに登録
  3. CISのネームサーバーをお名前.comに登録
  4. ドメインの証明書を発行
  5. Code Engineにアプリケーションをデプロイ
  6. Code Engineでドメインマッピング設定
  7. CISでDNSレコードの登録
  8. 取得したドメインでアプリケーションにアクセス

1. ドメインを取得

今回は、お名前.comを使って取得しました。
記事執筆した2024/12月時点では、ドメインの取得のみなら1つ無料で出来ました。(レンタルサーバー代は別途)

希望のドメイン名を入力して検索してみます。
スクリーンショット 2024-12-18 10.50.55.png

利用可能なドメインには○がついています
私はなかなか決まりませんでした、、
スクリーンショット_2024-12-18_10_50_22.png

利用したいドメインが決まったら、○マークをクリック
今回はtoulouse0505.comを取得してみます。
スクリーンショット 2024-12-18 10.54.17.png
ここから、購入画面です。
利用用途を選択
スクリーンショット 2024-12-18 10.54.30.png
申し込み内容の確認です。
レンタルサーバーは今回不要でしたので削除しました。
この画面より下にあるオプションは、今回は不要でしたのでつけませんでした。
購入内容が決まったら、右側で会員登録をします。
スクリーンショット_2024-12-18_10_55_15.png
続いて、会員情報の登録
スクリーンショット_2024-12-17_15_20_42-2.png
支払い方法の登録
登録が終わったら画面右上の「申込む」をクリック
スクリーンショット_2024-12-17_15_21_34.png

申し込みの受付が完了しました!
スクリーンショット_2024-12-17_15_23_32.png
管理画面を見てみます。
スクリーンショット_2024-12-17_15_25_13.png
この時点では、お名前.comのネームサーバーが名前解決をすることになっていることが確認出来ます。

2. ドメインをCISに登録

"Overview"画面を開きます。
このアカウントでは既に登録してあるドメインがありますが、右側のポチをクリックしてNew Domainを選択します。
スクリーンショット_2024-12-18_12_18_41-2.png

登録したいドメインを入力します。
Standard Next Planでは、1つ以上ドメインを登録する場合、2つ目からは追加で月額料金がかかります。その旨が書いてあるチェックボックスにチェックを入れ、"Next"を押します。

スクリーンショット_2024-12-17_16_50_11.png

DNSレコードはあとで登録するので、ここは飛ばして"Next"を押します。
スクリーンショット_2024-12-18_12_35_48.png

New NS recordsの欄にある新たなCISのネームサーバー情報をコピーしてどこかにメモしておきます。
コピーしたネームサーバー情報を、次のステップでお名前.comに登録します。ネームサーバー情報がDNSのシステムに反映されてからでないとCISの方でも登録完了できないので、ここでは一度"Cancel"しておきます。
スクリーンショット_2024-12-17_16_52_03.png
"Pending"になりました。ここで一旦CISの画面から離れます。
スクリーンショット_2024-12-17_16_52_58.png

3. CISのネームサーバーをお名前.comに登録

CISのネームサーバーをお名前.comに登録します。
"ドメイン">"ドメイン詳細">"ネームサーバー設定"から以下の画面に辿り着きました。"その他のサービス"の欄から、CISのネームサーバーを登録します。
スクリーンショット_2024-12-17_16_54_59-2.png
スクリーンショット_2024-12-17_16_55_36.png
これで、取得したドメインの名前解決を行うネームサーバーを、お名前.comのものからCISのものに変更することが出来ました。この変更がDNSのシステムに反映されるまで24~72時間ほどかかるそうです。(今回は24時間後には反映されていました)

4. ドメインの証明書を発行

続いて、Let's Encryptでドメインの証明書を発行します。
Let's Encryptとは、ACMEプロトコルを使用して動作する認証局(CA機関)です。ユーザーはACMEクライアント(Certbotなど)を通じて Let's Encryptの証明書を取得・管理します。(Let's encrypt参照:https://letsencrypt.org/ja/docs/challenge-types/)

certbotをインストール

brew install certbot

証明書発行のコマンド

sudo certbot certonly 
--manual 
--server https://acme-v02.api.letsencrypt.org/directory 
--preferred-challenges dns 
-d "*.toulouse0505.com" 
-d "toulouse0505.com" 
-m "xxxxxx@gmail.com"
  • コマンドはこちらのQiitaを参考にさせていただきました。
    https://qiita.com/F_clef/items/136d81223c030904523c

  • サブドメインを作った場合も、同じ証明書が使えるように、ワイルドカード -d "*.toulouse0505.com"を入れています。

利用規約が表示されるので"Y"で同意します。
またメールでのお知らせに関する承諾を聞かれますがこれはどちらでも大丈夫です。

ACMEチャレンジのTXTレコードに設定する値が表示される

続いて以下のコマンドが返ってきます。

- - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name:
_acme-challenge.toulouse0505.com.
with the following value:
xxxxxxxxxxxxxxxx
- - - - - - - - - - - - - - - - - - - -

ここで、ターミナル画面が"Press Enter to Continue"とEnterキー待ちの状態となりますが、まだ押しません。認証用のトークンであるvaluexxxxxxxxxxxxxの値をコピーし、CISに登録しに行きます。

DNSへTXTレコードを設定

ドメイン名toulouse0505.comが登録されているDNSがきちんと制御下にあることを証明するために、認証用のトークンをCISのDNSレコードに登録します。
ポータルでCISを開き、"Reliability" > "DNS records"と進みます。
"Add"を押すと以下の画面が出てきます。
スクリーンショット_2024-12-18_15_54_49-2.png

  • タイプ:TXT
  • ホスト名:_acme-challenge
  • Content:コピーしておいた認証用のトークンxxxxxxxxxxxxxをペースト

"Add"を押して完了です。
TXTレコードが追加されたことが確認できます。ここで5分ほど待ちます。
スクリーンショット_2024-12-20_11_14_33.png

証明書発行

5分ほど待ってTXTレコードが反映された頃に、Enterを押すと証明書が発行されます。

Successfully received certificate.
Certificate is saved at:
/etc/letsencrypt/live/toulouse0505.com/fullchain.pem
Key is saved at:
/etc/letsencrypt/live/toulouse0505.com/privkey.pem
This certificate expires on 2025
These files witl be updated when the certificate renews.
  • 発行された証明書が以下のディレクトリで確認できます。
    証明書 : /etc/letsencrypt/live/ドメイン名/fullchain.pem
    秘密鍵 : /etc/letsencrypt/live/ドメイン名/privkey.pem

  • 証明書の自動更新の案内も表示されますが今回は省略します。

5. Code Engineにアプリケーションをデプロイ

Code Engineを用意します。
スクリーンショット_2024-12-18_16_06_39.png
スクリーンショット_2024-12-18_16_06_53.png

  • コンポーネントタイプ:アプリケーション
  • アプリケーション名:application-toulouse
  • コード:既存のコンテナイメージ(helloworld)を使う
  • リソースは課金を抑えるため最小限のもの
  • インスタンス1台のみでの稼働
  • ドメインマッピング:パブリック

プロビジョニングが完了したら、アプリケーションの動作確認をします。
スクリーンショット_2024-12-18_16_09_37.png
スクリーンショット_2024-12-18_16_09_51.png
Code Engineでデプロイしたアプリケーションの動作確認ができました。

6. Code Engineでドメインマッピング設定

続いて、Code Engineのドメインマッピング機能で、今回私が取得したドメインtoulouse0505.comでアプリケーションにアクセスできるようにします。

"Domain Mappings"のページを開きます。
"Custom domain mappings"から"Create"をクリックします。
スクリーンショット_2024-12-18_16_11_39.png
先ほどLet's encryptで発行した証明書(サーバー証明書、中間証明書を含むフルチェーン)とPrivate Keyをコピペします。
スクリーンショット_2024-12-18_16_17_54.png
続いて画面下部で、アプリケーションを公開する際に使うFQDNを作成します。今回はwww.toulouse0505.comにします。
CNAME targetも後ほどCISに設定を入れるのでコピーをしてどこかにペーストしておきます。
スクリーンショット_2024-12-18_16_22_45.png
"Create"を押します。

7. CISでDNSレコードの登録

CISを経由してCode Engineにアクセスさせるために、DNSレコードの登録をします。
CISの"Reliability"から、ページ下部のDNS recordsの"Add"をクリック。
(先程使った"_acme-challenge"は削除して大丈夫です)
スクリーンショット_2024-12-18_16_24_19.png
Code Engineにアクセスする為のDNSレコードの中身
スクリーンショット_2024-12-18_16_25_26.png

  • DNSレコードタイプ:CNAME
  • ホスト名:www
  • Alias(≒別名)domain name:Code Engineのカスタムドメイン設定時にコピーしておいたCNAME target

"Add"でDNSレコードを追加します。

スクリーンショット_2024-12-18_16_25_43.png
"Proxy"をオンにしておきます。
これでDNSレコード追加作業は完了です。

8. 取得したドメインでアプリケーションにアクセス

スクリーンショット_2024-12-18_16_32_36.png
取得したドメインを使ってアプリケーションにアクセスすることが出来ました。

3
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
3
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?