|
| 1 | +import Tabs from '@theme/Tabs'; |
| 2 | +import TabItem from '@theme/TabItem'; |
| 3 | +import JavadocLink from "/src/theme/JavadocLink.js"; |
| 4 | +import DbSpecificSteps from '/src/components/ja-jp/_getting-started-db-specific-steps.mdx'; |
| 5 | + |
| 6 | +## 前提条件 |
| 7 | + |
| 8 | +- 以下のいずれかの Java Development Kit (JDK): |
| 9 | + - **[Oracle JDK](https://www.oracle.com/java/):** 8、11、17、または 21 (LTS バージョン) |
| 10 | + - **[OpenJDK](https://openjdk.org/) ([Eclipse Temurin](https://adoptium.net/temurin/)、[Amazon Corretto](https://aws.amazon.com/corretto/)、または [Microsoft Build of OpenJDK](https://learn.microsoft.com/ja-jp/java/openjdk/)):** 8、11、17、または 21 (LTS バージョン) |
| 11 | +- [Docker](https://www.docker.com/get-started/) 20.10以降と[Docker Compose](https://docs.docker.com/compose/install/) v2.20.0以降 |
| 12 | + |
| 13 | +:::warning |
| 14 | + |
| 15 | +ScalarDL は JDK 8 でビルドされているため、コントラクトは JDK 8 互換のバイナリである必要があります。JDK 8 以外のバージョンを使用する場合は、JDK 8 互換のバイナリをビルドするようにビルドツールを設定する必要があります。バイナリ互換性を指定する方法はいくつかあり、javac の `--release 8` オプションを使用するか、JDK 8 ツールチェーンを使用するように Gradle または Maven の設定を行う方法があります。以下は Gradle の設定例です: |
| 16 | + |
| 17 | +```gradle |
| 18 | +java { |
| 19 | + toolchain { |
| 20 | + languageVersion.set(JavaLanguageVersion.of(8)) |
| 21 | + } |
| 22 | +} |
| 23 | +``` |
| 24 | + |
| 25 | +Gradle と Maven の設定の詳細については、[Toolchains for JVM projects for Gradle](https://docs.gradle.org/current/userguide/toolchains.html) と [Guide to Using Toolchains for Maven](https://maven.apache.org/guides/mini/guide-using-toolchains.html) を参照してください。 |
| 26 | + |
| 27 | +::: |
| 28 | + |
| 29 | +## ScalarDL サンプルリポジトリをクローンする |
| 30 | + |
| 31 | +**ターミナル**を開き、次のコマンドを実行して ScalarDL サンプルリポジトリをクローンします: |
| 32 | + |
| 33 | +```console |
| 34 | +git clone https://github.com/scalar-labs/scalardl-samples |
| 35 | +``` |
| 36 | + |
| 37 | +次に、以下のコマンドを実行して、サンプル設定を含むディレクトリに移動します: |
| 38 | + |
| 39 | +```console |
| 40 | +cd scalardl-samples |
| 41 | +``` |
| 42 | + |
| 43 | +## お使いのデータベースで ScalarDL を起動する |
| 44 | + |
| 45 | +データベースを選択し、コマンドに従って ScalarDL Ledger をデプロイしてください。ScalarDL がサポートするデータベースの一覧については、[データベース](./requirements#databases)を参照してください。 |
| 46 | + |
| 47 | +<Tabs groupId="databases" queryString> |
| 48 | + <TabItem value="mysql" label="MySQL" default> |
| 49 | + <DbSpecificSteps productName="MySQL" shortName="mysql" /> |
| 50 | + </TabItem> |
| 51 | + |
| 52 | + <TabItem value="postgres" label="PostgreSQL"> |
| 53 | + <DbSpecificSteps productName="PostgreSQL" shortName="postgres" /> |
| 54 | + </TabItem> |
| 55 | + |
| 56 | + <TabItem value="oracle" label="Oracle Database"> |
| 57 | + <DbSpecificSteps productName="Oracle Database" shortName="oracle" /> |
| 58 | + </TabItem> |
| 59 | + |
| 60 | + <TabItem value="sqlserver" label="SQL Server"> |
| 61 | + <DbSpecificSteps productName="SQL Server" shortName="sqlserver" /> |
| 62 | + </TabItem> |
| 63 | + |
| 64 | + <TabItem value="dynamodb" label="DynamoDB"> |
| 65 | + <DbSpecificSteps productName="DynamoDB" shortName="dynamodb" /> |
| 66 | + </TabItem> |
| 67 | + |
| 68 | + <TabItem value="cosmosdb" label="Cosmos DB for NoSQL"> |
| 69 | + |
| 70 | + <h3>ライセンスを設定する (Enterprise Edition のみ)</h3> |
| 71 | + |
| 72 | + ScalarDL Enterprise Edition を使用している場合は、以下の手順でライセンスを設定してください。Community Edition を使用している場合は、次のセクションに進んで ScalarDL を起動してください。 |
| 73 | + |
| 74 | + <details> |
| 75 | + <summary>ライセンスを設定するにはこちらをご覧ください</summary> |
| 76 | + |
| 77 | + 1. 次のように `cosmosdb/docker-compose-ledger.yml` ファイルで Enterprise Edition 用の Docker イメージを有効にします: |
| 78 | + |
| 79 | + - イメージ変更前 (デフォルト設定): |
| 80 | + |
| 81 | + ```yaml |
| 82 | + services: |
| 83 | + scalardl-ledger: |
| 84 | + image: ghcr.io/scalar-labs/scalardl-ledger:${SCALARDL_VERSION} |
| 85 | + # image: ghcr.io/scalar-labs/scalardl-ledger-byol:${SCALARDL_VERSION} |
| 86 | + ``` |
| 87 | + |
| 88 | + - イメージ変更後: |
| 89 | + |
| 90 | + ```yaml |
| 91 | + services: |
| 92 | + scalardl-ledger: |
| 93 | + # image: ghcr.io/scalar-labs/scalardl-ledger:${SCALARDL_VERSION} |
| 94 | + image: ghcr.io/scalar-labs/scalardl-ledger-byol:${SCALARDL_VERSION} |
| 95 | + ``` |
| 96 | +
|
| 97 | + 2. ScalarDL Ledger のライセンスキーを設定します。`cosmosdb/ledger.properties` ファイル内の `<SET_YOUR_LICENSE_KEY>` をライセンスキーに置き換えます。例: |
| 98 | + |
| 99 | + ```properties |
| 100 | + ##### PLEASE REPLACE THIS VALUE WITH YOUR LICENSE KEY (ENTERPRISE EDITION ONLY) ##### |
| 101 | + scalar.dl.licensing.license_key={"organization_name":"XXXXXXXX","expiration_date_time":"YYYY-MM-DDTHH:mm:SS+TIMEZONE","product_name":"ScalarDL Ledger","product_version":N,"license_type":"trial","signature":"XXXXXXXX"} |
| 102 | + ##### PLEASE REPLACE THIS VALUE WITH YOUR LICENSE KEY (ENTERPRISE EDITION ONLY) ##### |
| 103 | + ``` |
| 104 | + |
| 105 | + 3. ライセンスを確認するには、次のように `cosmosdb/docker-compose-ledger.yml` ファイルを更新します。トライアルライセンスを使用している場合は、この手順をスキップしてください。 |
| 106 | + |
| 107 | + - 証明書ファイルパス変更前 (デフォルト設定): |
| 108 | + |
| 109 | + ```yaml |
| 110 | + services: |
| 111 | + scalardl-ledger: |
| 112 | + volumes: |
| 113 | + - ./ledger.properties:/scalar/ledger/ledger.properties.tmpl |
| 114 | + - ../fixture/ledger-key.pem:/scalar/ledger-key.pem |
| 115 | + - ../fixture/trial-license-cert.pem:/scalar/license-cert.pem |
| 116 | + # If you have a commercial license key, you must use `commercial-license-cert.pem` instead of `trial-license-cert.pem`. |
| 117 | + # - ../fixture/commercial-license-cert.pem:/scalar/license-cert.pem |
| 118 | + ``` |
| 119 | + |
| 120 | + - 証明書ファイルパス変更後: |
| 121 | + |
| 122 | + ```yaml |
| 123 | + services: |
| 124 | + scalardl-ledger: |
| 125 | + volumes: |
| 126 | + - ./ledger.properties:/scalar/ledger/ledger.properties.tmpl |
| 127 | + - ../fixture/ledger-key.pem:/scalar/ledger-key.pem |
| 128 | + # - ../fixture/trial-license-cert.pem:/scalar/license-cert.pem |
| 129 | + # If you have a commercial license key, you must use `commercial-license-cert.pem` instead of `trial-license-cert.pem`. |
| 130 | + - ../fixture/commercial-license-cert.pem:/scalar/license-cert.pem |
| 131 | + ``` |
| 132 | +
|
| 133 | + </details> |
| 134 | +
|
| 135 | + <h3>ScalarDL を起動する</h3> |
| 136 | +
|
| 137 | + 以下の手順で ScalarDL Ledger を起動できます: |
| 138 | +
|
| 139 | + 1. Cosmos DB for NoSQL を設定します。 |
| 140 | +
|
| 141 | + Azure Cosmos DB for NoSQL を使用するには、Azure アカウントが必要です。Azure アカウントをお持ちでない場合は、[Azure Cosmos DB アカウントの作成](https://learn.microsoft.com/ja-jp/azure/cosmos-db/nosql/quickstart-portal#create-account)をご覧ください。 |
| 142 | +
|
| 143 | + Cosmos DB for NoSQL の設定後、Cosmos DB for NoSQL の設定に基づいて `cosmodb/ledger.properties` 内の以下の項目を変更します。 |
| 144 | + |
| 145 | + ```properties |
| 146 | + scalar.db.contact_points=<COSMOS_DB_FOR_NOSQL_URI> |
| 147 | + scalar.db.password=<COSMOS_DB_FOR_NOSQL_KEY> |
| 148 | + ``` |
| 149 | + |
| 150 | + 2. 次のコマンドを実行して、ScalarDL Ledger 用のデータベーススキーマをロードします: |
| 151 | + |
| 152 | + ```console |
| 153 | + docker compose -f cosmosdb/docker-compose-ledger.yml up -d scalardl-ledger-schema-loader |
| 154 | + ``` |
| 155 | + |
| 156 | + 3. 次のコマンドを実行して、ScalarDL Ledgerを実行します: |
| 157 | + |
| 158 | + ```console |
| 159 | + docker compose -f cosmosdb/docker-compose-ledger.yml up -d |
| 160 | + ``` |
| 161 | + </TabItem> |
| 162 | + |
| 163 | + <TabItem value="cassandra" label="Cassandra"> |
| 164 | + <DbSpecificSteps productName="Cassandra" shortName="cassandra" /> |
| 165 | + </TabItem> |
| 166 | + |
| 167 | +</Tabs> |
0 commit comments