The documentation you are viewing is for Dapr v1.8 which is an older version of Dapr. For up-to-date documentation, see the latest version.
PostgreSQL
Create a Dapr component
Create a file called postgres.yaml
, paste the following and replace the <CONNECTION STRING>
value with your connection string. The connection string is a standard PostgreSQL connection string. For example, "host=localhost user=postgres password=example port=5432 connect_timeout=10 database=dapr_test"
. See the PostgreSQL documentation on database connections, specifically Keyword/Value Connection Strings, for information on how to define a connection string.
If you want to also configure PostgreSQL to store actors, add the actorStateStore
configuration element shown below.
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: <NAME>
spec:
type: state.postgresql
version: v1
metadata:
- name: connectionString
value: "<CONNECTION STRING>"
Warning
The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described here.Spec metadata fields
Field | Required | Details | Example |
---|---|---|---|
connectionString | Y | The connection string for PostgreSQL | "host=localhost user=postgres password=example port=5432 connect_timeout=10 database=dapr_test" |
actorStateStore | N | Consider this state store for actors. Defaults to "false" |
"true" , "false" |
If you wish to use PostgreSQL as an actor store, append the following to the yaml.
- name: actorStateStore
value: "true"
Create PostgreSQL
-
Run an instance of PostgreSQL. You can run a local instance of PostgreSQL in Docker CE with the following command:
This example does not describe a production configuration because it sets the password in plain text and the user name is left as the PostgreSQL default of “postgres”.
docker run -p 5432:5432 -e POSTGRES_PASSWORD=example postgres
-
Create a database for state data. Either the default “postgres” database can be used, or create a new database for storing state data.
To create a new database in PostgreSQL, run the following SQL command:
create database dapr_test
Related links
- Basic schema for a Dapr component
- Read this guide for instructions on configuring state store components
- State management building block
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.