Documentation

LCP.jsonによるコンフィギュレーション

DXPクラウド環境の各サービスには、 LCP.json ファイルがあり、これを使用してサービスを設定することができます。 サービスID、メモリ、CPU数、環境変数、ボリュームなどのプロパティを設定できます。

この表は、 LCP.jsonで追加できるプロパティを一覧にして説明しています。

Field

Type (Automatic Copy)

デフォルト値

説明

id

文字列

ランダム

サービスID

image (Automatic Copy)

文字列

""

Docker Hubからサービスイメージ

env

オブジェクト

未定義

環境変数

loadBalancer

オブジェクト

{}

公開ポートおよびドメインの宣言

cpu

数値

1

CPU数

スケール

数値

1

インスタンスの起動数

メモリ

数値

512

メモリ量(MB)

ボリューム

オブジェクト

未定義

データを永続化するためのパス

readinessProbe

オブジェクト

{ "timeoutSeconds": 5 }

サービスレディネスチェック

livenessProbe

オブジェクト

{ "timeoutSeconds": 5 }

サービス稼働率チェック

依存関係

配列

[]

依存関係の展開順序

kind

文字列

デプロイ

デプロイメントタイプ(例:Deployment、StatefulSet)。

strategy

オブジェクト

{ "type": "RollingUpdate" }

デプロイ戦略(RollingUpdateやRecreateなど)

ports

配列

[]

ポートおよびプロトコルの宣言

環境

オブジェクト

{}

環境に応じた設定

デプロイする

ブール値

true

指定された環境に対してサービスが展開されるかどうか。 このプロパティは、 環境 プロパティの内部でのみ使用し、ルートレベルでは使用しないでください。 サンプルの LCP.json ファイルを参照してください。

autoscale

オブジェクト

{ "cpu": 80, "memory": 80 }

オートスケーリングでのCPUおよびメモリの目標平均使用率。 これがオートスケーリングでどのように機能するかについての詳細は、 オートスケーリングを参照してください。

使用量

以下は、すべてのプロパティを使用した LCP.json ファイルの例です。

{
  "id": "myservice",
  "image": "liferaycloud/example",
  "env": {
    "DB_USER": "root",
    "DB_PASSWORD": "pass123"
  },
  "loadBalancer": {
    "cdn": true,
    "targetPort": 3000,
    "customDomains": ["example.com"],
    "ssl": {
      "key": "...",
      "crt": "..."
    }
  },
  "cpu": 2,
  "scale": 2,
  "memory": 2048,
  "volumes": {
    "storage": "/opt/storage"
  },
  "livenessProbe": {
    "timeoutSeconds": 5,
    "httpGet": {
      "path": "/status",
      "port": 3000
    },
    "initialDelaySeconds": 40,
    "periodSeconds": 5,
    "successThreshold": 5
  },
  "readinessProbe": {
    "timeoutSeconds": 5,
    "exec": {
      "command": ["cat", "/tmp/healthy"]
    },
    "initialDelaySeconds": 40,
    "periodSeconds": 5
  },
  "dependencies": ["service1", "service2"],
  "kind": "StatefulSet",
  "strategy": {
    "type": "RollingUpdate"
  },
  "ports": [
    {
      "port": 3400,
      "targetPort": 7000,
      "protocol": "TCP"
    },
    {
      "port": 9000,
      "targetPort": 8000,
      "protocol": "TCP",
      "external": true
    }
  ],
  "environments": {
    "prd": {
      "memory": 4096,
      "cpu": 6
    },
    "dev": {
      "deploy": false
    }
  },
  "autoscale": {
    "cpu": 90,
    "memory": 90
  }
}