The documentation you are viewing is for Dapr v0.11 which is an older version of Dapr. For up-to-date documentation, see the latest version.
Initialize Dapr in your local environment
Now that you have the Dapr CLI installed, it’s time to initialize Dapr on your local machine using the CLI.
Dapr runs as a sidecar alongside your application, and in self-hosted mode this means it is a process on your local machine. Therefore, initializing Dapr includes fetching the Dapr sidecar binaries and installing them locally.
In addition, the default initialization process also creates a development environment that helps streamline application development with Dapr. This includes the following steps:
- Running a Redis container instance to be used as a local state store and message broker
- Running a Zipkin container instance for observability
- Creating a default components folder with component definitions for the above
- Running a Dapr placement service container instance for local actor support
Docker
This recommended development environment requires Docker. It is possible to initialize Dapr without a dependency on Docker (see this guidance) but next steps in this guide assume the recommended development environment.Step 1: Open an elevated terminal
If you run your Docker commands with sudo, or the install path is /usr/local/bin
(default install path), you will need to use sudo
below.
Make sure that you run Command Prompt as administrator (right click, run as administrator)
Step 2: Run the init CLI command
Install the latest Dapr runtime binaries:
dapr init
Step 3: Verify Dapr version
dapr --version
Output should look like this:
CLI version: 0.11
Runtime version: 0.11
Step 4: Verify containers are running
As mentioned above, the dapr init
command launches several containers that will help you get started with Dapr. Verify this by running:
docker ps
Make sure that instances with daprio/dapr
, openzipkin/zipkin
, and redis
images are all running:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0dda6684dc2e openzipkin/zipkin "/busybox/sh run.sh" 2 minutes ago Up 2 minutes 9410/tcp, 0.0.0.0:9411->9411/tcp dapr_zipkin
9bf6ef339f50 redis "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 0.0.0.0:6379->6379/tcp dapr_redis
8d993e514150 daprio/dapr "./placement" 2 minutes ago Up 2 minutes 0.0.0.0:6050->50005/tcp dapr_placement
Step 5: Verify components directory has been initialized
On dapr init
, the CLI also creates a default components folder which includes several YAML files with definitions for a state store, pub/sub and zipkin. These will be read by the Dapr sidecar, telling it to use the Redis container for state management and messaging and the Zipkin container for collecting traces.
- In Linux/MacOS Dapr is initialized with default components and files in
$HOME/.dapr
. - For Windows Dapr is initialized to
%USERPROFILE%\.dapr\
Run:
ls $HOME/.dapr
You should see:
bin components config.yaml
Open %USERPROFILE%\.dapr\
in file explorer:
explorer "%USERPROFILE%\.dapr\"
You will see the Dapr config, Dapr binaries directory, and the default components directory for Dapr:
