DNSレコード登録
Route53ダッシュボードの設定対象ドメインページでCreate recordをクリックし、次の値のレコードを生成してください。
- Record name: *
- Record type: A
- value: EC2インスタンスのPublic IPアドレス
この手順で、エールでデプロイしたサービスに登録されたルートドメインがプレビューURLとして付与されます。
次のコマンドでネームサーバにレコードが反映されたか確認できます。
Cert Managerのインストール
次のコマンドを実行し、Cert Managerをインストールしてください。
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install \
cert-manager jetstack/cert-manager \
--namespace cert-manager \
--create-namespace \
--version v1.15.3 \
--set crds.enabled=true
ClusterIssuer設定とTLS証明書発行
次のコマンドでClusterIssuerとTLS証明書を作成してください。
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
metadata:
name: aws-secret-access-key
namespace: cert-manager
type: Opaque
stringData:
aws-secret-access-key: $AWS_SECRET_ACCESS_KEY
---
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: ale-issuer
namespace: cert-manager
spec:
acme:
email: $ACME_EMAIL
server: https://acme-v02.api.letsencrypt.org/directory
privateKeySecretRef:
name: ale-issuer
solvers:
- http01:
ingress:
class: nginx
- dns01:
route53:
region: $AWS_REGION
hostedZoneID: $AWS_HOSTED_ZONE_ID
accessKeyID: $AWS_ACCESS_KEY_ID
secretAccessKeySecretRef:
name: aws-secret-access-key
key: aws-secret-access-key
selector:
dnsZones:
- $AWS_DOMAIN
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: ale-app-tls
namespace: cert-manager
spec:
dnsNames:
- "*.$AWS_DOMAIN"
issuerRef:
kind: ClusterIssuer
name: ale-issuer
secretName: ale-app-tls
EOF
エールでIngress設定
https://app.[ドメイン]にアクセスして、エールで管理者を生成し、インストールを完了してください。
プレビュードメインフィールドには接続したルートドメインを入力します。
左サイドバーのクラスターページ設定タブで、ネットワークセクションに以下の値を入力し、適用をクリックします。
- プレビュードメイン: 接続したルートドメイン
- HTTPS使用
- チェック: インターネット環境
- チェック解除: イントラネット/閉鎖網環境
- 証明書シークレット名: ale-app-tls
- 証明書シークレットネームスペース: cert-manager
- 証明書発行者: ale-issuer
- イングレスクラス: nginx
- ロードバランサータイプ: NodePort
ダッシュボードの左上にあるスペース名をクリックすると、運用システムにアクセスできます。
運用システムメニューは、運用システムへのアクセス権限を持つアカウントにのみ表示されます。
エール利用開始
運用システム左上のBackをクリックするか、https://app.[ドメイン]にアクセスしてエールに接続し、登録完了プロセスを経ると開発者ダッシュボードを使用できます。
運用システムおよび開発者ダッシュボードの使用法は以下のカードをご参照ください。