<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dapr 快速入门指南 on Dapr 文档库</title><link>https://v1-18.docs.dapr.io/zh-hans/getting-started/</link><description>Recent content in Dapr 快速入门指南 on Dapr 文档库</description><generator>Hugo</generator><language>zh-hans</language><atom:link href="https://v1-18.docs.dapr.io/zh-hans/getting-started/index.xml" rel="self" type="application/rss+xml"/><item><title>安装 Dapr CLI</title><link>https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-cli/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-cli/</guid><description>&lt;p>Dapr CLI 是执行各种 Dapr 相关任务的主要工具。您可以使用它来：&lt;/p>
&lt;ul>
&lt;li>运行带有 Dapr 边车的应用程序。&lt;/li>
&lt;li>查看边车日志。&lt;/li>
&lt;li>列出正在运行的服务。&lt;/li>
&lt;li>运行 Dapr 仪表板。&lt;/li>
&lt;/ul>
&lt;p>Dapr CLI 可在 &lt;a href="https://v1-18.docs.dapr.io/zh-hans/operations/hosting/self-hosted/">自托管&lt;/a> 和 &lt;a href="https://v1-18.docs.dapr.io/zh-hans/operations/hosting/kubernetes/">Kubernetes&lt;/a> 环境中使用。&lt;/p>


&lt;div class="alert alert-primary" role="alert">
&lt;h4 class="alert-heading">开始之前&lt;/h4>

 请在 Docker Desktop 的高级选项中确认已启用默认的 Docker socket。如果您在 Windows 上使用 WSL 集成，则此选项不可用。
&lt;img src="https://v1-18.docs.dapr.io/images/docker-desktop-setting.png" width=800 style="padding-bottom:15px;">

&lt;/div>

&lt;h3 id="步骤-1安装-dapr-cli">步骤 1：安装 Dapr CLI&lt;/h3>










&lt;ul class="nav nav-tabs" id="tabs-3" role="tablist">
 &lt;li class="nav-item">
 &lt;button class="nav-link active"
 id="tabs-03-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-00" role="tab"
 data-td-tp-persist="linux" aria-controls="tabs-03-00" aria-selected="true">
 Linux
 &lt;/button>
 &lt;/li>&lt;li class="nav-item">
 &lt;button class="nav-link"
 id="tabs-03-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-01" role="tab"
 data-td-tp-persist="windows" aria-controls="tabs-03-01" aria-selected="false">
 Windows
 &lt;/button>
 &lt;/li>&lt;li class="nav-item">
 &lt;button class="nav-link"
 id="tabs-03-02-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-02" role="tab"
 data-td-tp-persist="macos" aria-controls="tabs-03-02" aria-selected="false">
 MacOS
 &lt;/button>
 &lt;/li>&lt;li class="nav-item">
 &lt;button class="nav-link"
 id="tabs-03-03-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-03" role="tab"
 data-td-tp-persist="binaries" aria-controls="tabs-03-03" aria-selected="false">
 Binaries
 &lt;/button>
 &lt;/li>
&lt;/ul>

&lt;div class="tab-content" id="tabs-3-content">
 &lt;div class="tab-body tab-pane fade show active"
 id="tabs-03-00" role="tabpanel" aria-labelled-by="tabs-03-00-tab" tabindex="3">
 &lt;h4 id="从终端安装">从终端安装&lt;/h4>
&lt;p>将最新的 Linux Dapr CLI 安装到 &lt;code>/usr/local/bin&lt;/code>：&lt;/p></description></item><item><title>在本地环境中配置 Dapr</title><link>https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-selfhost/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-selfhost/</guid><description>&lt;p>现在您已经&lt;a href="https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-cli/">安装了 Dapr CLI&lt;/a>，可以使用 CLI 在本地计算机上配置 Dapr。&lt;/p>
&lt;p>Dapr 作为一个附属进程与您的应用程序一起运行。在自托管模式下，这意味着它在您的本地计算机上作为一个进程运行。通过配置 Dapr，您可以：&lt;/p>
&lt;ul>
&lt;li>获取并在本地安装 Dapr sidecar 的二进制文件。&lt;/li>
&lt;li>创建一个简化应用程序开发的环境。&lt;/li>
&lt;/ul>
&lt;p>Dapr 的配置过程包括：&lt;/p>
&lt;ol>
&lt;li>启动一个 &lt;strong>Redis 容器实例&lt;/strong> 作为本地状态存储和消息代理。&lt;/li>
&lt;li>启动一个 &lt;strong>Zipkin 容器实例&lt;/strong> 以实现可观测性。&lt;/li>
&lt;li>创建一个包含上述组件定义的 &lt;strong>默认组件文件夹&lt;/strong>。&lt;/li>
&lt;li>启动一个 &lt;strong>Dapr placement service 容器实例&lt;/strong> 以支持本地 actor。&lt;/li>
&lt;li>启动一个 &lt;strong>Dapr scheduler service 容器实例&lt;/strong> 以进行任务调度。&lt;/li>
&lt;/ol>


&lt;div class="alert alert-primary" role="alert">
&lt;h4 class="alert-heading">Kubernetes 开发环境&lt;/h4>

 要在本地或远程 &lt;strong>Kubernetes&lt;/strong> 集群中配置 Dapr 进行开发（包括上面列出的 Redis 和 Zipkin 容器），请参阅&lt;a href="https://v1-18.docs.dapr.io/zh-hans/operations/hosting/kubernetes/kubernetes-deploy/#install-dapr-from-the-official-dapr-helm-chart-with-development-flag">如何在 Kubernetes 上配置 Dapr 进行开发&lt;/a>

&lt;/div>



&lt;div class="alert alert-primary" role="alert">
&lt;h4 class="alert-heading">Docker&lt;/h4>

 &lt;p>推荐的开发环境需要 &lt;a href="https://docs.docker.com/install/">Docker&lt;/a>。虽然您可以&lt;a href="https://v1-18.docs.dapr.io/zh-hans/operations/hosting/self-hosted/self-hosted-no-docker/">在没有 Docker 依赖的情况下配置 Dapr&lt;/a>，但本指南的下一步假设您使用推荐的 Docker 开发环境。&lt;/p>
&lt;p>您也可以安装 &lt;a href="https://podman.io/">Podman&lt;/a> 代替 Docker。阅读更多关于&lt;a href="https://v1-18.docs.dapr.io/zh-hans/reference/cli/dapr-init/">使用 Podman 配置 Dapr&lt;/a>的信息。&lt;/p>


&lt;/div>

&lt;h3 id="步骤-1打开具有管理员权限的终端">步骤 1：打开具有管理员权限的终端&lt;/h3>






&lt;ul class="nav nav-tabs" id="tabs-3" role="tablist">
 &lt;li class="nav-item">
 &lt;button class="nav-link active"
 id="tabs-03-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-00" role="tab"
 data-td-tp-persist="linux/macos" aria-controls="tabs-03-00" aria-selected="true">
 Linux/MacOS
 &lt;/button>
 &lt;/li>&lt;li class="nav-item">
 &lt;button class="nav-link"
 id="tabs-03-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-03-01" role="tab"
 data-td-tp-persist="windows" aria-controls="tabs-03-01" aria-selected="false">
 Windows
 &lt;/button>
 &lt;/li>
&lt;/ul>

&lt;div class="tab-content" id="tabs-3-content">
 &lt;div class="tab-body tab-pane fade show active"
 id="tabs-03-00" role="tabpanel" aria-labelled-by="tabs-03-00-tab" tabindex="3">
 &lt;p>如果您在运行 Docker 命令时使用 &lt;code>sudo&lt;/code>，或者安装路径是 &lt;code>/usr/local/bin&lt;/code>（默认安装路径），则需要在此快速入门中使用 &lt;code>sudo&lt;/code>。&lt;/p></description></item><item><title>使用 Dapr API</title><link>https://v1-18.docs.dapr.io/zh-hans/getting-started/get-started-api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://v1-18.docs.dapr.io/zh-hans/getting-started/get-started-api/</guid><description>&lt;p>在本指南中，您将通过运行 sidecar 并直接调用状态管理 API 来模拟应用程序的操作。在使用 Dapr CLI 运行 Dapr 之后，您将：&lt;/p>
&lt;ul>
&lt;li>保存一个状态对象。&lt;/li>
&lt;li>读取/获取状态对象。&lt;/li>
&lt;li>删除状态对象。&lt;/li>
&lt;/ul>
&lt;p>&lt;a href="https://v1-18.docs.dapr.io/zh-hans/developing-applications/building-blocks/state-management/">了解更多关于状态构建块及其工作原理的概念文档&lt;/a>。&lt;/p>
&lt;h3 id="前置条件">前置条件&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-cli/">安装 Dapr CLI&lt;/a>。&lt;/li>
&lt;li>&lt;a href="https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-selfhost/">运行 &lt;code>dapr init&lt;/code>&lt;/a>。&lt;/li>
&lt;/ul>
&lt;h3 id="步骤-1-运行-dapr-sidecar">步骤 1: 运行 Dapr sidecar&lt;/h3>
&lt;p>&lt;a href="https://v1-18.docs.dapr.io/zh-hans/reference/cli/dapr-run/">&lt;code>dapr run&lt;/code>&lt;/a> 命令通常会运行您的应用程序和一个 Dapr sidecar。在这种情况下，由于您直接与状态管理 API 交互，它只运行 sidecar。&lt;/p>
&lt;p>启动一个 Dapr sidecar，它将在端口 3500 上监听一个名为 &lt;code>myapp&lt;/code> 的空白应用程序：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>dapr run --app-id myapp --dapr-http-port &lt;span style="color:#0000cf;font-weight:bold">3500&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>由于上述命令没有定义自定义组件文件夹，Dapr 使用在 &lt;a href="https://v1-18.docs.dapr.io/zh-hans/getting-started/install-dapr-selfhost/#step-5-verify-components-directory-has-been-initialized">&lt;code>dapr init&lt;/code> 流程&lt;/a>中创建的默认组件定义。&lt;/p>
&lt;h3 id="步骤-2-保存状态">步骤 2: 保存状态&lt;/h3>
&lt;p>使用一个对象更新状态。新的状态将如下所示：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-json" data-lang="json">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#000;font-weight:bold">[&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#000;font-weight:bold">{&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#204a87;font-weight:bold">&amp;#34;key&amp;#34;&lt;/span>&lt;span style="color:#000;font-weight:bold">:&lt;/span> &lt;span style="color:#4e9a06">&amp;#34;name&amp;#34;&lt;/span>&lt;span style="color:#000;font-weight:bold">,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#204a87;font-weight:bold">&amp;#34;value&amp;#34;&lt;/span>&lt;span style="color:#000;font-weight:bold">:&lt;/span> &lt;span style="color:#4e9a06">&amp;#34;Bruce Wayne&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#000;font-weight:bold">}&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#000;font-weight:bold">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>注意，状态中包含的每个对象都有一个 &lt;code>key&lt;/code>，其值为 &lt;code>name&lt;/code>。您将在下一步中使用该 key。&lt;/p>
&lt;p>使用以下命令保存一个新的状态对象：&lt;/p>





&lt;ul class="nav nav-tabs" id="tabs-5" role="tablist">
 &lt;li class="nav-item">
 &lt;button class="nav-link active"
 id="tabs-05-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-05-00" role="tab"
 data-td-tp-persist="http api (bash)" aria-controls="tabs-05-00" aria-selected="true">
 HTTP API (Bash)
 &lt;/button>
 &lt;/li>&lt;li class="nav-item">
 &lt;button class="nav-link"
 id="tabs-05-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-05-01" role="tab"
 data-td-tp-persist="http api (powershell)" aria-controls="tabs-05-01" aria-selected="false">
 HTTP API (PowerShell)
 &lt;/button>
 &lt;/li>
&lt;/ul>

&lt;div class="tab-content" id="tabs-5-content">
 &lt;div class="tab-body tab-pane fade show active"
 id="tabs-05-00" role="tabpanel" aria-labelled-by="tabs-05-00-tab" tabindex="5">
 &lt;div class="highlight">&lt;pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>curl -X POST -H &lt;span style="color:#4e9a06">&amp;#34;Content-Type: application/json&amp;#34;&lt;/span> -d &lt;span style="color:#4e9a06">&amp;#39;[{ &amp;#34;key&amp;#34;: &amp;#34;name&amp;#34;, &amp;#34;value&amp;#34;: &amp;#34;Bruce Wayne&amp;#34;}]&amp;#39;&lt;/span> http://localhost:3500/v1.0/state/statestore
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
 &lt;/div>
 &lt;div class="tab-body tab-pane fade"
 id="tabs-05-01" role="tabpanel" aria-labelled-by="tabs-05-01-tab" tabindex="5">
 &lt;div class="highlight">&lt;pre tabindex="0" style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-powershell" data-lang="powershell">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#204a87">Invoke-RestMethod&lt;/span> &lt;span style="color:#000">-Method&lt;/span> &lt;span style="color:#000">Post&lt;/span> &lt;span style="color:#000">-ContentType&lt;/span> &lt;span style="color:#4e9a06">&amp;#39;application/json&amp;#39;&lt;/span> &lt;span style="color:#000">-Body&lt;/span> &lt;span style="color:#4e9a06">&amp;#39;[{ &amp;#34;key&amp;#34;: &amp;#34;name&amp;#34;, &amp;#34;value&amp;#34;: &amp;#34;Bruce Wayne&amp;#34;}]&amp;#39;&lt;/span> &lt;span style="color:#000">-Uri&lt;/span> &lt;span style="color:#4e9a06">&amp;#39;http://localhost:3500/v1.0/state/statestore&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>
 &lt;/div>
&lt;/div>

&lt;h3 id="步骤-3-获取状态">步骤 3: 获取状态&lt;/h3>
&lt;p>使用状态管理 API 和 key &lt;code>name&lt;/code> 检索您刚刚存储在状态中的对象。在同一个终端窗口中，运行以下命令：&lt;/p></description></item></channel></rss>