Skip to content

rosenkolev/dapr-pluggable-component-litedb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DAPR Pluggable Component For LiteDb

Build Status Docker Image Version !Docker Image Size License: MIT

Report Bug . Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License

About The Project

Pluggable component to use LiteDb as DAPR state.

Features

Features are based on the DAPR state protocol (see Dapr State Stores).

Component CRUD Transactional Batch ETag TTL Actors Query
litedb

Getting Started

Dependencies

NuGet Version   NuGet Version

Installation

dotnet run -d -v dapr-sockets:/tmp/dapr-components-sockets:rw rosenkolev/dapr-pluggable-component-litedb

Usage

Configure

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: roles
spec:
  type: state.litedb
  version: v1
  metadata:
    # - name: databaseName
    #   value: state
    # - name: collectionName
    #   value: default
    # - name: indexes
    #   value: 

Spec metadata fields

Field Required Details Example
databaseName N The database file name.
Default: state
"my_database"
collectionName N The collection name
Default: default
"roles", "users"
indexes N The collection indexes "email"
"email,externalId"

Files

Path Details
/.db/{databaseName}.db (ie: /.db/state.db) The database file.
/.db/metadata.json The file preserving components metadata between container restarts.

Docker Compose

version: '3.4'

volumes:
  dapr-sockets:

services:
  api:
    image: ${DOCKER_REGISTRY-}api
    build:
      context: .
      dockerfile: Api/Dockerfile
  api-dapr:
    image: "daprio/daprd"
    container_name: api-darp
    command: ["./daprd",
      "-app-id", "api",
      "-app-port", "8080",
      "-placement-host-address", "placement:50006",
      "--resources-path", "/components"]
    volumes:
      - dapr-sockets:/tmp/dapr-components-sockets:rw
      - ./dapr/components/:/components
    depends_on:
      - dapr-litedb
    network_mode: "service:api"
  
  dapr-litedb:
    image: rosenkolev/dapr-pluggable-component-litedb
    container_name: dapr-litedb
    restart: no
    volumes:
      - dapr-sockets:/tmp/dapr-components-sockets:rw

Contribution

The project is open for contribution by the community.

License

Project is licensed under the MIT license.