コンテナ内でのKVLiteの起動
この項では、コンテナ内でKVLiteを起動する方法について説明します。
- Oracle NoSQL Databaseコンテナ・イメージをプルします次に示す手順では、Oracle NoSQL Database Community Editionを使用します。イメージは、GitHubコンテナ・レジストリから直接プルできます。ここでは、セキュアでないイメージをプルします。
docker pull ghcr.io/oracle/nosql:latest-ce docker tag ghcr.io/oracle/nosql:latest-ce oracle/nosql:ce - コンテナでのOracle NoSQL Databaseの実行名前とホスト名を指定する必要があります。
出力:docker run -d --name=kvlite --hostname=kvlite --env KV_PROXY_PORT=8080 -p 8080:8080 oracle/nosql:ceKVLiteがコンテナで起動され、コンテナのIDが表示されます。
デフォルトでは、作成されるKVLiteストアのサイズは10 GBです。19001d44b56aa9a53c75cf0904298c4e0e3013df287e4a8f83ebff2e1b0ac172--env KV_STORAGESIZE=Nを使用して新しい値を設定できます。NはGB単位で、1より大きい値である必要があります。 - コンテナのステータスの確認コンテナのステータスを確認するには、次のコマンドを実行します:
出力:docker psコンテナの詳細が表示されます。CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 19001d44b56a oracle/nosql:ce "bash -c ./start-kvl…" 6 minutes ago Up 6 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp kvlite - デプロイメントの検証次のコマンドを使用して、KVLiteストア・インスタンスにpingを実行できます出力:
docker exec -ti kvlite java -jar lib/kvstore.jar ping -host kvlite -port 5000Pinging components of store kvstore based upon topology sequence #14 10 partitions and 1 storage nodes Time: 2025-04-28 09:57:53 UTC Version: 24.4.9 Shard Status: healthy: 1 writable-degraded: 0 read-only: 0 offline: 0 total: 1 Admin Status: healthy Zone [name=KVLite id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] RN Status: online: 1 read-only: 0 offline: 0 Storage Node [sn1] on kvlite: 5000 Zone: [name=KVLite id=zn1 type=PRIMARY allowArbiters=false masterAffinity=false] Status: RUNNING Ver: 24.4.9 2024-11-21 17:06:06 UTC Build id: 95fa28ea4441 Edition: Community isMasterBalanced: true serviceStartTime: 2025-04-28 09:43:36 UTC Admin [admin1] Status: RUNNING,MASTER serviceStartTime: 2025-04-28 09:43:38 UTC stateChangeTime: 2025-04-28 09:43:38 UTC availableStorageSize: 2 GB Rep Node [rg1-rn1] Status: RUNNING,MASTER sequenceNumber: 84 haPort: 5011 availableStorageSize: 9 GB storageType: HD serviceStartTime: 2025-04-28 09:43:39 UTC stateChangeTime: 2025-04-28 09:43:39 UTC - データベースへの問合せSQLシェルを起動して、データベースに問い合せて、いくつかの表を作成できます。
SQLプロンプトが表示されます。docker exec -ti kvlite java -jar lib/sql.jar -helper-hosts kvlite:5000 -store kvstore
SQL問合せを入力して、sql->ticketという名前の表を作成します。
出力:sql->create table if not exists ticket(ticketNo LONG, confNo STRING, PRIMARY KEY(ticketNo))表が正常に作成されます
表のリストを表示する問合せを入力しますStatement completed successfully
出力:sql->show tables作成した表ticketがリストされます。tables SYS$IndexStatsLease SYS$MRTableAgentStat SYS$MRTableInfo SYS$MRTableInitCheckpoint SYS$PartitionStatsLease SYS$SGAttributesTable SYS$StreamRequest SYS$StreamResponse SYS$TableMetadata SYS$TableStatsIndex SYS$TableStatsPartition SYS$TopologyHistory ticket