Setup SeaDB in single node¶
SeaDB depends on FoundationDB.
FoundationDB is a distributed database designed to handle large volumes of structured data across clusters of commodity servers.
Deploy FoundationDB¶
For non-production environments, FoundationDB(v7.3.63) can be deployed as a single-node instance using Docker. For installation-package deployments, please refer to the official documentation.
Download and modify .env¶
mkdir -p /opt/seadb
cd /opt/seadb
wget -O .env https://manual.seaticket.ai/0.9/repo/docker/seadb/env
wget https://manual.seaticket.ai/0.9/repo/docker/seadb/fdb.yml
wget https://manual.seaticket.ai/0.9/repo/docker/seadb/fdb.cluster
vim .env
Modify COMPOSE_FILE='seadb.yml' to COMPOSE_FILE='fdb.yml' in the .env file.
COMPOSE_FILE='fdb.yml'
Initialize FoundationDB¶
# Start the FoundationDB service
docker compose up -d
# Enter the fdb container
docker exec -it fdb bash
fdbcli
# Configure the ssd-2 storage engine
fdb> configure new single ssd
fdb> configure storage_migration_type=aggressive
fdb> configure ssd
# Check the fdb status
fdb> status
Deploy SeaDB¶
Download and modify .env¶
cd /opt/seadb
wget https://manual.seaticket.ai/0.9/repo/docker/seadb/seadb.yml
vim .env
Modify COMPOSE_FILE='fdb.yml' to COMPOSE_FILE='fdb.yml,seadb.yml' in the .env file.
COMPOSE_FILE='fdb.yml,seadb.yml'
The following fields merit particular attention:
| Variable | Description | Default Value |
|---|---|---|
SEADB_SERVER_ACCESS_TOEKN |
SEADB_SERVER_ACCESS_TOEKN, A random string with a length of no less than 32 characters is required for SeaTicket, which can be generated by using pwgen -s 40 1 |
(required) |
SEADB_VOLUME |
The volume directory of SeaDB data | /opt/seadb-data |
FDB_VOLUME |
The volume directory of FoundationDB data | /opt/fdb-data |
TIME_ZONE |
Time zone | UTC |
Start SeaDB¶
Run the following command:
docker compose up -d
docker logs -f seadb
When you see the following log, it means that SeaDB is ready:
seadb | seadb started