Docker: 環境変数とシークレットの設定

このドキュメントはGitHub Actions でデプロイするガイドの一部です。完全なガイドはこちらからご覧いただけます:GitHub Actions を使って Docker コンテナをデプロイする方法

Stackheroドキュメントへようこそ

Stackheroは、迅速かつ信頼性の高いコンテナデプロイメントのために設計された、すぐに使えるDockerクラウドCaaS(Containers as a Service)プラットフォームを提供しています。

  • docker-compose up ひとつで本番環境にデプロイできます。追加設定は不要で、コンテナをそのまま起動するだけです。
  • 独自のドメイン名を選択でき、自動的にHTTPSでセキュア化されます(例:https://api.your-company.comhttps://www.your-company.comhttps://backoffice.your-company.com など)。
  • プライベートかつ専用インフラ上で、高いパフォーマンスと堅牢なセキュリティを実現します。
  • ワンクリックでアップデートを適用でき、シンプルかつ手間のかからないメンテナンスが可能です。

約5分でコンテナを本番環境で稼働させることができます。Stackheroがインフラ、アップデート、セキュリティを管理するため、アプリケーション開発に集中できます。Docker CaaSクラウドホスティングの詳細もご覧ください。

GitHub Actions から Stackhero の Docker サービスへ接続するには、サービスのドメイン名と証明書パスワードの2つの情報が必要です。

  1. Stackhero ダッシュボードで「production」Docker サービスを選択し、「Configure」ボタンをクリックします。

    サービス設定の取得サービス設定の取得

  2. 「Domain name」と「Docker certificates password」の両方をコピーし、次の手順で使用します。

    サービス設定の取得サービス設定の取得

  1. GitHub でプロジェクトを開きます。

  2. Settings > Environments に進み、New environment をクリックします。

    GitHub 環境の設定GitHub 環境の設定

  3. Name フィールドに「production」と入力し、確定します。

    環境の設定環境の設定

  4. No restriction ボタンをクリックし、Selected branches and tags を選択します。

    環境制限の設定環境制限の設定

  5. Add deployment branch or tag rule をクリックし、Name pattern フィールドに「production」と入力して Add rule をクリックします。

    環境ブランチの設定環境ブランチの設定 環境ブランチの設定環境ブランチの設定

  6. Environment secrets の下で Add secret をクリックします。

    シークレットの追加シークレットの追加

  7. シークレット名に STACKHERO_CERTIFICATES_PASSWORD を指定し、証明書パスワードを Value フィールドに貼り付けます。

    証明書パスワードシークレットの設定証明書パスワードシークレットの設定

  8. Environment variables の下で Add variable をクリックします。

    変数の設定変数の設定

  9. 名前に STACKHERO_ENDPOINT を指定し、Stackhero ダッシュボードで確認できる Docker サービスのエンドポイントを Value フィールドに貼り付けます。

    エンドポイント変数の設定エンドポイント変数の設定

サービスのドメイン名をカスタマイズしている場合は、<XXXXXX>.stackhero-network.com の代わりにカスタムドメインを使用してください。

すでに docker-compose.yml ファイルがプロジェクトのルートにあり、カスタマイズが不要な場合はこのセクションをスキップできます。

デフォルトでは、GitHub Actions はプロジェクトのルートディレクトリにある docker-compose.yml ファイルを参照します。別のファイルや構成を使いたい場合は、デプロイコマンドを調整できます。たとえば、Node.js と Docker のスターターボイラープレート を利用している場合は、新しい環境変数 STACKHERO_DEPLOY_COMMAND を作成し、以下のように設定します:

docker compose --env-file env.list --file docker/docker-compose.yml --file docker/docker-compose.production.yml up --build --remove-orphans -d