mirror of https://github.com/dapr/docs.git
77 lines
4.1 KiB
Markdown
77 lines
4.1 KiB
Markdown
---
|
||
type: docs
|
||
title: "How-To: Run Dapr in an offline or airgap environment"
|
||
linkTitle: "Run in offline or airgap"
|
||
weight: 30000
|
||
description: "How to deploy and run Dapr in self-hosted mode in an airgap environment"
|
||
---
|
||
|
||
## Overview
|
||
|
||
By default, Dapr initialization downloads binaries and pulls images from the network to setup the development environment. However, Dapr also supports offline or airgap installation using pre-downloaded artifacts, either with a Docker or slim environment. The artifacts for each Dapr release are built into a [Dapr Installer Bundle](https://github.com/dapr/installer-bundle) which can be downloaded. By using this installer bundle with the Dapr CLI `init` command, you can install Dapr into environments that do not have any network access.
|
||
## Setup
|
||
|
||
Before airgap initialization, it is required to download a Dapr Installer Bundle beforehand, containing the CLI, runtime and dashboard packaged together. This eliminates the need to download binaries as well as Docker images when initializing Dapr locally.
|
||
|
||
1. Download the [Dapr Installer Bundle](https://github.com/dapr/installer-bundle/releases) for the specific release version. For example, daprbundle_linux_amd64.tar.gz, daprbundle_windows_amd64.zip.
|
||
2. Unpack it.
|
||
3. To install Dapr CLI copy the `daprbundle/dapr (dapr.exe for Windows)` binary to the desired location:
|
||
* For Linux/MacOS - `/usr/local/bin`
|
||
* For Windows, create a directory and add this to your System PATH. For example create a directory called `c:\dapr` and add this directory to your path, by editing your system environment variable.
|
||
|
||
> Note: If Dapr CLI is not moved to the desired location, you can use local `dapr` CLI binary in the bundle. The steps above is to move it to the usual location and add it to the path.
|
||
|
||
## Initialize Dapr environment
|
||
|
||
Dapr can be initialized in an airgap environment with or without Docker containers.
|
||
### Initialize Dapr with Docker
|
||
|
||
([Prerequisite](#Prerequisites): Docker is available in the environment)
|
||
|
||
Move to the bundle directory and run the following command:
|
||
``` bash
|
||
dapr init --from-dir .
|
||
```
|
||
> For linux users, if you run your Docker cmds with sudo, you need to use "**sudo dapr init**"
|
||
|
||
> If you are not running the above cmd from the bundle directory, provide the full path to bundle directory as input. For example, assuming the bundle directory path is $HOME/daprbundle, run `dapr init --from-dir $HOME/daprbundle` to have the same behavior.
|
||
|
||
The output should look similar to the following:
|
||
```bash
|
||
Making the jump to hyperspace...
|
||
ℹ️ Installing runtime version latest
|
||
↘ Extracting binaries and setting up components... Loaded image: daprio/dapr:$version
|
||
✅ Extracting binaries and setting up components...
|
||
✅ Extracted binaries and completed components set up.
|
||
ℹ️ daprd binary has been installed to $HOME/.dapr/bin.
|
||
ℹ️ dapr_placement container is running.
|
||
ℹ️ Use `docker ps` to check running containers.
|
||
✅ Success! Dapr is up and running. To get started, go here: https://aka.ms/dapr-getting-started
|
||
```
|
||
|
||
> Note: To emulate *online* Dapr initialization using `dapr init`, you can also run Redis and Zipkin containers as follows:
|
||
```
|
||
1. docker run --name "dapr_zipkin" --restart always -d -p 9411:9411 openzipkin/zipkin
|
||
2. docker run --name "dapr_redis" --restart always -d -p 6379:6379 redislabs/rejson
|
||
```
|
||
|
||
### Initialize Dapr without Docker
|
||
|
||
Alternatively to have the CLI not install any default configuration files or run any Docker containers, use the `--slim` flag with the `init` command. Only the Dapr binaries will be installed.
|
||
|
||
``` bash
|
||
dapr init --slim --from-dir .
|
||
```
|
||
|
||
The output should look similar to the following:
|
||
```bash
|
||
⌛ Making the jump to hyperspace...
|
||
ℹ️ Installing runtime version latest
|
||
↙ Extracting binaries and setting up components...
|
||
✅ Extracting binaries and setting up components...
|
||
✅ Extracted binaries and completed components set up.
|
||
ℹ️ daprd binary has been installed to $HOME.dapr/bin.
|
||
ℹ️ placement binary has been installed to $HOME/.dapr/bin.
|
||
✅ Success! Dapr is up and running. To get started, go here: https://aka.ms/dapr-getting-started
|
||
```
|