From 7b62c883254a300c393d749d955bc10a4ad33ea2 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 14:35:34 +0100 Subject: [PATCH 01/10] Include download scripts in the quickstart as shareable md snippet --- docs/develop/local_dev.mdx | 123 +------------------------------ docs/get_started/quickstart.mdx | 113 +++++++++++------------------ docs/shared/DownloadRestate.mdx | 124 ++++++++++++++++++++++++++++++++ 3 files changed, 166 insertions(+), 194 deletions(-) create mode 100644 docs/shared/DownloadRestate.mdx diff --git a/docs/develop/local_dev.mdx b/docs/develop/local_dev.mdx index 4291570e..c0baf497 100644 --- a/docs/develop/local_dev.mdx +++ b/docs/develop/local_dev.mdx @@ -3,133 +3,14 @@ sidebar_position: 2 description: "Learn how to set up your local dev environment" --- -import {CodeWithTabs} from "../../src/components/code/code"; import Admonition from '@theme/Admonition'; -import TabItem from "@theme/TabItem"; -import Tabs from "@theme/Tabs"; import {TextAndCode} from "../../src/components/code/code/text-and-code"; +import {DownloadRestate} from "../shared/DownloadRestate.mdx"; # Local Dev ## Running Restate Server & CLI locally - - - Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: - - - - ```shell !!tabs MacOS-x64 - BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): - sudo mv restate $BIN && \ - sudo mv restate-server $BIN - ``` - - ```shell !!tabs MacOS-arm64 - BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): - sudo mv restate $BIN && \ - sudo mv restate-server $BIN - ``` - - ```shell !!tabs Linux-x64 - BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example ~/.local/bin: - mv restate $BIN && \ - mv restate-server $BIN - ``` - - ```shell !!tabs Linux-arm64 - BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example ~/.local/bin: - mv restate $BIN && \ - mv restate-server $BIN - ``` - - - Then run the Restate Server with: - ```shell - restate-server - ``` - - - - - Install Restate Server and run it with: - - ```shell !result - brew install restatedev/tap/restate-server && - restate-server - ``` - - - - Install the CLI via: - - ```shell !result - brew install restatedev/tap/restate - ``` - - - - - Install Restate Server and run it: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - restate-server - ``` - - - Or use npx, without installation: - - ```shell !result - npx @restatedev/restate-server - ``` - - - Install the Restate CLI via: - - ```shell !result - npm install --global @restatedev/restate@latest - ``` - - - - - To run the Restate Server: - - ```shell - docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION - ``` - - To run commands with the Restate CLI, use the following command: - - ```shell - docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls - ``` - - Replace `invocations ls` by the CLI command you want to run. - - - + Have a look at the [CLI configuration docs](/operate/configuration/cli) or [Server configuration docs](/operate/configuration/server) for more configuration options. diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index 479ee6de..f900d064 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -9,6 +9,7 @@ import TabItem from '@theme/TabItem'; import Admonition from '@theme/Admonition'; import {Step} from "../../src/components/Stepper"; import {CodeWithTabs} from "../../src/components/code/code"; +import DownloadRestate from "../shared/DownloadRestate.mdx"; # Quickstart This guide takes you through your first steps with Restate. @@ -18,10 +19,14 @@ This guide takes you through your first steps with Restate. - TypeScript: Latest stable version of [NodeJS](https://nodejs.org/en/) >= v18.17.1 and [npm CLI](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) >= 9.6.7 - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + Restate is a single self-contained binary. No external dependencies needed. + + + + Download the [Node template](https://github.com/restatedev/node-template-generator) with a skeleton of a Restate service. And install its dependencies: @@ -31,7 +36,7 @@ This guide takes you through your first steps with Restate. ``` - + Now, start developing your service in `src/app.ts`. Run it with [`ts-node-dev`](https://www.npmjs.com/package/ts-node-dev), and let it listen on port `9080` for requests: @@ -41,15 +46,6 @@ This guide takes you through your first steps with Restate. - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: @@ -119,9 +115,13 @@ This guide takes you through your first steps with Restate. - Java: [JDK](https://whichjdk.com/) >= 11 - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + + Restate is a single self-contained binary. No external dependencies needed. + + + ```shell !!tabs CLI @@ -138,7 +138,7 @@ This guide takes you through your first steps with Restate. - + You are all set to start developing your service. Open the project in an IDE and configure it to build with Gradle. @@ -150,15 +150,6 @@ This guide takes you through your first steps with Restate. - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: @@ -227,10 +218,13 @@ This guide takes you through your first steps with Restate. - Java/Kotlin: [JDK](https://whichjdk.com/) >= 11 - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + Restate is a single self-contained binary. No external dependencies needed. + + + @@ -248,7 +242,7 @@ This guide takes you through your first steps with Restate. - + You are all set to start developing your service. Open the project in an IDE and configure it to build with Gradle. @@ -259,16 +253,6 @@ This guide takes you through your first steps with Restate. ``` - - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: @@ -339,10 +323,14 @@ This guide takes you through your first steps with Restate. - Go: >= 1.21.0 - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + Restate is a single self-contained binary. No external dependencies needed. + + + + @@ -360,7 +348,7 @@ This guide takes you through your first steps with Restate. - + Now, start developing your service in `greeter.go`. Run it with: ```shell @@ -370,15 +358,6 @@ This guide takes you through your first steps with Restate. - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: @@ -448,10 +427,13 @@ This guide takes you through your first steps with Restate. - Python >= v3.11 - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + Restate is a single self-contained binary. No external dependencies needed. + + + ```shell !!tabs CLI @@ -468,7 +450,7 @@ This guide takes you through your first steps with Restate. - + Create a `venv` and install the requirements: @@ -486,15 +468,6 @@ This guide takes you through your first steps with Restate. - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: @@ -553,10 +526,13 @@ This guide takes you through your first steps with Restate. - [Rust](https://rustup.rs/) - - [Install the Restate Server & CLI](/develop/local_dev#running-restate-server--cli-locally) - + + Restate is a single self-contained binary. No external dependencies needed. + + + ```shell !!tabs CLI @@ -573,7 +549,7 @@ This guide takes you through your first steps with Restate. - + Use `cargo run` to build and run the example: @@ -583,15 +559,6 @@ This guide takes you through your first steps with Restate. - - Restate is a single self-contained binary. No external dependencies needed. Once you have [installed the Restate Server](/develop/local_dev#running-restate-server--cli-locally), run it locally via: - - ```shell - restate-server - ``` - - - Tell Restate where the service is running, so Restate can discover and register the services and handlers behind this endpoint: diff --git a/docs/shared/DownloadRestate.mdx b/docs/shared/DownloadRestate.mdx new file mode 100644 index 00000000..b2726bba --- /dev/null +++ b/docs/shared/DownloadRestate.mdx @@ -0,0 +1,124 @@ + +import {CodeWithTabs} from "../../src/components/code/code"; +import Admonition from '@theme/Admonition'; +import TabItem from "@theme/TabItem"; +import Tabs from "@theme/Tabs"; +import {TextAndCode} from "../../src/components/code/code/text-and-code"; + + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and run it: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + restate-server + ``` + + + Or use npx, without installation: + + ```shell !result + npx @restatedev/restate-server + ``` + + + Install the Restate CLI via: + + ```shell !result + npm install --global @restatedev/restate@latest + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + \ No newline at end of file From 95a422acbc9a3bea4836826c11cb2997c5ea45eb Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 15:49:12 +0100 Subject: [PATCH 02/10] Add quarkus and springboot to the quickstart of Java --- docs/get_started/quickstart.mdx | 107 ++++++++++++++++++++++-------- src/css/custom.css | 29 +++++++- static/img/quickstart/gradle.svg | 8 +++ static/img/quickstart/java.svg | 11 +++ static/img/quickstart/maven.svg | 2 + static/img/quickstart/quarkus.svg | 12 ++++ static/img/quickstart/spring.svg | 8 +++ 7 files changed, 148 insertions(+), 29 deletions(-) create mode 100644 static/img/quickstart/gradle.svg create mode 100644 static/img/quickstart/java.svg create mode 100644 static/img/quickstart/maven.svg create mode 100644 static/img/quickstart/quarkus.svg create mode 100644 static/img/quickstart/spring.svg diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index f900d064..005996d4 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -17,6 +17,7 @@ This guide takes you through your first steps with Restate. + - TypeScript: Latest stable version of [NodeJS](https://nodejs.org/en/) >= v18.17.1 and [npm CLI](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) >= 9.6.7 @@ -62,11 +63,7 @@ This guide takes you through your first steps with Restate. ``` - - If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. -
- Output ```shell @@ -84,7 +81,7 @@ This guide takes you through your first steps with Restate. ```
- + If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`.
@@ -122,21 +119,75 @@ This guide takes you through your first steps with Restate. - - - ```shell !!tabs CLI - restate example java-hello-world-gradle && - cd java-hello-world-gradle - ``` - - ```shell !!tabs wget - wget https://github.com/restatedev/examples/releases/latest/download/java-hello-world-gradle.zip && - unzip java-hello-world-gradle.zip -d java-hello-world-gradle && - rm java-hello-world-gradle.zip && cd java-hello-world-gradle - ``` - - - + Build tool: + + MavenMaven}> + Architecture: + + Spring BootSpring Boot}> + + ```shell !!tabs CLI + restate example java-hello-world-maven-spring-boot && + cd java-hello-world-maven-spring-boot + ``` + + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/java-hello-world-maven-spring-boot.zip && + unzip java-hello-world-maven-spring-boot.zip -d java-hello-world-maven-spring-boot && + rm java-hello-world-maven-spring-boot.zip && cd java-hello-world-maven-spring-boot + ``` + + + QuarkusQuarkus}> + + ```shell !!tabs CLI + restate example java-hello-world-maven-quarkus && + cd java-hello-world-maven-quarkus + ``` + + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/java-hello-world-maven-quarkus.zip && + unzip java-hello-world-maven-quarkus.zip -d java-hello-world-maven-quarkus && + rm java-hello-world-maven-quarkus.zip && cd java-hello-world-maven-quarkus + ``` + + + VanillaVanilla}> + + ```shell !!tabs CLI + restate example java-hello-world-maven && + cd java-hello-world-maven + ``` + + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/java-hello-world-maven.zip && + unzip java-hello-world-maven.zip -d java-hello-world-maven && + rm java-hello-world-maven.zip && cd java-hello-world-maven + ``` + + + + + GradleGradle}> + Architecture: + + VanillaVanilla}> + + ```shell !!tabs CLI + restate example java-hello-world-gradle && + cd java-hello-world-gradle + ``` + + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/java-hello-world-gradle.zip && + unzip java-hello-world-gradle.zip -d java-hello-world-gradle && + rm java-hello-world-gradle.zip && cd java-hello-world-gradle + ``` + + + + + @@ -167,8 +218,6 @@ This guide takes you through your first steps with Restate. - If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. -
Output @@ -189,6 +238,8 @@ This guide takes you through your first steps with Restate.
+ If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. +
@@ -270,8 +321,6 @@ This guide takes you through your first steps with Restate. - If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. -
Output @@ -292,6 +341,8 @@ This guide takes you through your first steps with Restate.
+ If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. +
@@ -375,8 +426,6 @@ This guide takes you through your first steps with Restate. - If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. -
Output @@ -397,6 +446,8 @@ This guide takes you through your first steps with Restate.
+ If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. +
@@ -576,8 +627,6 @@ This guide takes you through your first steps with Restate. - If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. -
Output @@ -598,6 +647,8 @@ This guide takes you through your first steps with Restate.
+ If you run Restate with Docker, use `http://host.docker.internal:9080` instead of `http://localhost:9080`. +
diff --git a/src/css/custom.css b/src/css/custom.css index ed2b3cd6..abe0fb29 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -430,4 +430,31 @@ ol { margin-inline-end: 0px; padding-inline-start: 40px; unicode-bidi: isolate; -} \ No newline at end of file +} + +/* Add this to your CSS file */ +.selection-button { + margin: 1rem 0; + gap: 1rem; +} + +.selection-button .tabs__item { + border: 1px solid var(--ifm-color-secondary); + border-radius: 8px; + padding: 0.2rem 0.5rem; + cursor: pointer; +} + +.selection-button .tabs__item--active { + color: var(--ifm-color-primary); + border-color: var(--ifm-color-primary); +} + +/* Add this to your CSS file */ +.icon { + width: 24px; + height: 24px; + margin-right: 8px; + margin-bottom: 0; + vertical-align: middle; +} diff --git a/static/img/quickstart/gradle.svg b/static/img/quickstart/gradle.svg new file mode 100644 index 00000000..fb75dfee --- /dev/null +++ b/static/img/quickstart/gradle.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/static/img/quickstart/java.svg b/static/img/quickstart/java.svg new file mode 100644 index 00000000..ed92b9a7 --- /dev/null +++ b/static/img/quickstart/java.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/static/img/quickstart/maven.svg b/static/img/quickstart/maven.svg new file mode 100644 index 00000000..6a5e1b02 --- /dev/null +++ b/static/img/quickstart/maven.svg @@ -0,0 +1,2 @@ + +file_type_maven \ No newline at end of file diff --git a/static/img/quickstart/quarkus.svg b/static/img/quickstart/quarkus.svg new file mode 100644 index 00000000..be721de2 --- /dev/null +++ b/static/img/quickstart/quarkus.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/static/img/quickstart/spring.svg b/static/img/quickstart/spring.svg new file mode 100644 index 00000000..4f70f0b7 --- /dev/null +++ b/static/img/quickstart/spring.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file From f8c103088e03b8252ddfb45ce37ee5dda033310e Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 15:51:54 +0100 Subject: [PATCH 03/10] Styling --- src/css/custom.css | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/css/custom.css b/src/css/custom.css index abe0fb29..07e45cb0 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -446,8 +446,9 @@ ol { } .selection-button .tabs__item--active { - color: var(--ifm-color-primary); - border-color: var(--ifm-color-primary); + color: var(--ifm-color-secondary-darker); + background-color: var(--ifm-color-secondary-light); + border-color: var(--ifm-color-secondary-darker); } /* Add this to your CSS file */ From 4a61d8e1377fa4918f5433bd2e50c36ecb912bdb Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 16:16:30 +0100 Subject: [PATCH 04/10] Add runtime options for TypeScript to quickstart --- docs/get_started/quickstart.mdx | 43 +++++++++++++++++--- docs/shared/DownloadRestate.mdx | 18 +++----- static/img/quickstart/bun.svg | 26 ++++++++++++ static/img/quickstart/cloudflare_workers.svg | 1 + static/img/quickstart/deno.svg | 2 + static/img/quickstart/nodejs.svg | 8 ++++ 6 files changed, 80 insertions(+), 18 deletions(-) create mode 100644 static/img/quickstart/bun.svg create mode 100644 static/img/quickstart/cloudflare_workers.svg create mode 100644 static/img/quickstart/deno.svg create mode 100644 static/img/quickstart/nodejs.svg diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index 005996d4..64fe4b67 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -29,12 +29,45 @@ This guide takes you through your first steps with Restate. - Download the [Node template](https://github.com/restatedev/node-template-generator) with a skeleton of a Restate service. And install its dependencies: + Select your favorite runtime: + + Node.jsNode.js}> + + ```shell !!tabs CLI + restate example typescript-hello-world && + cd typescript-hello-world && + npm install + ``` + + ```shell !!tabs npx + npx -y @restatedev/create-app@latest && cd restate-node-template && + npm install + ``` + + + bunbun}> + ```shell + restate example typescript-bun-hello-world && + cd typescript-bun-hello-world && + npm install + ``` + + denoDeno}> + ```shell + restate example typescript-deno-hello-world && + cd typescript-deno-hello-world && + npm install + ``` + + Cloudflare WorkersCloudflare Workers}> + ```shell + restate example typescript-cloudflare-worker-hello-world && + cd typescript-cloudflare-worker-hello-world && + npm install + ``` + + - ```shell - npx -y @restatedev/create-app@latest && cd restate-node-template && \ - npm install - ``` diff --git a/docs/shared/DownloadRestate.mdx b/docs/shared/DownloadRestate.mdx index b2726bba..d662be7c 100644 --- a/docs/shared/DownloadRestate.mdx +++ b/docs/shared/DownloadRestate.mdx @@ -11,7 +11,7 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; Install Restate Server and CLI via: ```shell !result - brew install restatedev/tap/restate-server + brew install restatedev/tap/restate-server && brew install restatedev/tap/restate ``` @@ -81,25 +81,17 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code";
- Install Restate Server and run it: + Install Restate Server and CLI via: ```shell !result npm install --global @restatedev/restate-server@latest && - restate-server - ``` - - - Or use npx, without installation: - - ```shell !result - npx @restatedev/restate-server + npm install --global @restatedev/restate@latest && ``` - Install the Restate CLI via: - + Then run the Restate Server with: ```shell !result - npm install --global @restatedev/restate@latest + restate-server ``` diff --git a/static/img/quickstart/bun.svg b/static/img/quickstart/bun.svg new file mode 100644 index 00000000..531b2b73 --- /dev/null +++ b/static/img/quickstart/bun.svg @@ -0,0 +1,26 @@ + + + bun + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/img/quickstart/cloudflare_workers.svg b/static/img/quickstart/cloudflare_workers.svg new file mode 100644 index 00000000..023d4eb0 --- /dev/null +++ b/static/img/quickstart/cloudflare_workers.svg @@ -0,0 +1 @@ + diff --git a/static/img/quickstart/deno.svg b/static/img/quickstart/deno.svg new file mode 100644 index 00000000..5bb4f844 --- /dev/null +++ b/static/img/quickstart/deno.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/static/img/quickstart/nodejs.svg b/static/img/quickstart/nodejs.svg new file mode 100644 index 00000000..ec5b3096 --- /dev/null +++ b/static/img/quickstart/nodejs.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file From 60cc92b689def0136cbe6c6db7f49fd308383124 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 16:35:30 +0100 Subject: [PATCH 05/10] Add runtime options for Rust to quickstart --- docs/get_started/quickstart.mdx | 43 ++++++++++++++++++------- static/img/quickstart/shuttle-rust.png | Bin 0 -> 263252 bytes static/img/quickstart/tokio.svg | 37 +++++++++++++++++++++ 3 files changed, 68 insertions(+), 12 deletions(-) create mode 100644 static/img/quickstart/shuttle-rust.png create mode 100644 static/img/quickstart/tokio.svg diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index 64fe4b67..e76fed5e 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -68,7 +68,6 @@ This guide takes you through your first steps with Restate. -
@@ -618,19 +617,39 @@ This guide takes you through your first steps with Restate. - - ```shell !!tabs CLI - restate example rust-hello-world && - cd rust-hello-world - ``` + Select your favorite runtime: + + TokioTokio}> + + ```shell !!tabs CLI + restate example rust-hello-world && + cd rust-hello-world + ``` - ```shell !!tabs wget - wget https://github.com/restatedev/examples/releases/latest/download/rust-hello-world.zip && - unzip rust-hello-world.zip -d rust-hello-world && - rm rust-hello-world.zip && cd rust-hello-world - ``` + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/rust-hello-world.zip && + unzip rust-hello-world.zip -d rust-hello-world && + rm rust-hello-world.zip && cd rust-hello-world + ``` - + + + ShuttleShuttle}> + + ```shell !!tabs CLI + restate example rust-shuttle-hello-world && + cd rust-shuttle-hello-world + ``` + + ```shell !!tabs wget + wget https://github.com/restatedev/examples/releases/latest/download/rust-shuttle-hello-world.zip && + unzip rust-shuttle-hello-world.zip -d rust-shuttle-hello-world && + rm rust-shuttle-hello-world.zip && cd rust-shuttle-hello-world + ``` + + + + diff --git a/static/img/quickstart/shuttle-rust.png b/static/img/quickstart/shuttle-rust.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec7bfc4a008cc24da51b7837b79b39ee7620927 GIT binary patch literal 263252 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

Vt!s9 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%0DZkk&opE|Z1<1~5+`(mQS1N}kU^b+BF}H_(Ma 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 Gh5SEWK=^q8 literal 0 HcmV?d00001 diff --git a/static/img/quickstart/tokio.svg b/static/img/quickstart/tokio.svg new file mode 100644 index 00000000..0085dbad --- /dev/null +++ b/static/img/quickstart/tokio.svg @@ -0,0 +1,37 @@ + + + + Mark Copy + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 641648769e5c77e7e0430d65541cb45e961ecfa5 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 16:47:24 +0100 Subject: [PATCH 06/10] Revert shared markdown because of build exceptions --- docs/develop/local_dev.mdx | 128 +++++- docs/get_started/quickstart.mdx | 765 +++++++++++++++++++++++++++++++- docs/shared/DownloadRestate.mdx | 116 ----- 3 files changed, 877 insertions(+), 132 deletions(-) delete mode 100644 docs/shared/DownloadRestate.mdx diff --git a/docs/develop/local_dev.mdx b/docs/develop/local_dev.mdx index c0baf497..c43f7366 100644 --- a/docs/develop/local_dev.mdx +++ b/docs/develop/local_dev.mdx @@ -3,14 +3,138 @@ sidebar_position: 2 description: "Learn how to set up your local dev environment" --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; import Admonition from '@theme/Admonition'; import {TextAndCode} from "../../src/components/code/code/text-and-code"; -import {DownloadRestate} from "../shared/DownloadRestate.mdx"; # Local Dev ## Running Restate Server & CLI locally - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + Have a look at the [CLI configuration docs](/operate/configuration/cli) or [Server configuration docs](/operate/configuration/server) for more configuration options. diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index e76fed5e..72602d2c 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -9,23 +9,146 @@ import TabItem from '@theme/TabItem'; import Admonition from '@theme/Admonition'; import {Step} from "../../src/components/Stepper"; import {CodeWithTabs} from "../../src/components/code/code"; -import DownloadRestate from "../shared/DownloadRestate.mdx"; +import {TextAndCode} from "../../src/components/code/code/text-and-code"; # Quickstart This guide takes you through your first steps with Restate. - + - - TypeScript: Latest stable version of [NodeJS](https://nodejs.org/en/) >= v18.17.1 and [npm CLI](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) >= 9.6.7 + - [NodeJS](https://nodejs.org/en/) >= v18.17.1 + - [npm CLI](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) >= 9.6.7 Restate is a single self-contained binary. No external dependencies needed. + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: - + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + @@ -141,14 +264,137 @@ This guide takes you through your first steps with Restate. - + - Java: [JDK](https://whichjdk.com/) >= 11 Restate is a single self-contained binary. No external dependencies needed. - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + Build tool: @@ -297,7 +543,7 @@ This guide takes you through your first steps with Restate. - + - Java/Kotlin: [JDK](https://whichjdk.com/) >= 11 @@ -305,7 +551,130 @@ This guide takes you through your first steps with Restate. Restate is a single self-contained binary. No external dependencies needed. - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + @@ -410,7 +779,130 @@ This guide takes you through your first steps with Restate. Restate is a single self-contained binary. No external dependencies needed. - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + @@ -506,15 +998,137 @@ This guide takes you through your first steps with Restate. - + - Python >= v3.11 - Restate is a single self-contained binary. No external dependencies needed. - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + @@ -605,7 +1219,7 @@ This guide takes you through your first steps with Restate. - + - [Rust](https://rustup.rs/) @@ -613,7 +1227,130 @@ This guide takes you through your first steps with Restate. Restate is a single self-contained binary. No external dependencies needed. - + + + + Install Restate Server and CLI via: + + ```shell !result + brew install restatedev/tap/restate-server && + brew install restatedev/tap/restate + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + Install the Restate Server and CLI by downloading the binaries with `curl` + from the [releases + page](https://github.com/restatedev/restate/releases/latest), and make them + executable: + + + + ```shell !!tabs Linux-x64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs Linux-arm64 + BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example ~/.local/bin: + mv restate $BIN && \ + mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-x64 + BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + ```shell !!tabs MacOS-arm64 + BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ + curl -LO + https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz + && \ + tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ + chmod +x restate restate-server && \ + + # Move the binaries to a directory in your PATH, for example + /usr/local/bin (needs sudo): + sudo mv restate $BIN && \ + sudo mv restate-server $BIN + ``` + + + + Then run the Restate Server with: + ```shell + restate-server + ``` + + + + + Install Restate Server and CLI via: + + ```shell !result + npm install --global @restatedev/restate-server@latest && + npm install --global @restatedev/restate@latest && + ``` + + + Then run the Restate Server with: + ```shell !result + restate-server + ``` + + + + + To run the Restate Server: + + ```shell + docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ + --add-host=host.docker.internal:host-gateway + docker.io/restatedev/restate:VAR::RESTATE_VERSION + ``` + + To run commands with the Restate CLI, use the following command: + + ```shell + docker run -it --network=host + docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + ``` + + Replace `invocations ls` by the CLI command you want to run. + + + diff --git a/docs/shared/DownloadRestate.mdx b/docs/shared/DownloadRestate.mdx deleted file mode 100644 index d662be7c..00000000 --- a/docs/shared/DownloadRestate.mdx +++ /dev/null @@ -1,116 +0,0 @@ - -import {CodeWithTabs} from "../../src/components/code/code"; -import Admonition from '@theme/Admonition'; -import TabItem from "@theme/TabItem"; -import Tabs from "@theme/Tabs"; -import {TextAndCode} from "../../src/components/code/code/text-and-code"; - - - - - Install Restate Server and CLI via: - - ```shell !result - brew install restatedev/tap/restate-server && - brew install restatedev/tap/restate - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - - - Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: - - - - ```shell !!tabs Linux-x64 - BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example ~/.local/bin: - mv restate $BIN && \ - mv restate-server $BIN - ``` - - ```shell !!tabs Linux-arm64 - BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example ~/.local/bin: - mv restate $BIN && \ - mv restate-server $BIN - ``` - - ```shell !!tabs MacOS-x64 - BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): - sudo mv restate $BIN && \ - sudo mv restate-server $BIN - ``` - - ```shell !!tabs MacOS-arm64 - BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ - tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ - chmod +x restate restate-server && \ - - # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): - sudo mv restate $BIN && \ - sudo mv restate-server $BIN - ``` - - - - Then run the Restate Server with: - ```shell - restate-server - ``` - - - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - - - - To run the Restate Server: - - ```shell - docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION - ``` - - To run commands with the Restate CLI, use the following command: - - ```shell - docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls - ``` - - Replace `invocations ls` by the CLI command you want to run. - - - \ No newline at end of file From 9bf96e0403ee02c2b59efba0a91e62e4974d84b2 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 16:54:04 +0100 Subject: [PATCH 07/10] Add import --- docs/develop/local_dev.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/develop/local_dev.mdx b/docs/develop/local_dev.mdx index c43f7366..a5cdecc5 100644 --- a/docs/develop/local_dev.mdx +++ b/docs/develop/local_dev.mdx @@ -6,6 +6,7 @@ description: "Learn how to set up your local dev environment" import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import Admonition from '@theme/Admonition'; +import {CodeWithTabs} from "../../src/components/code/code"; import {TextAndCode} from "../../src/components/code/code/text-and-code"; # Local Dev From ad58f89b8d91b8c09a9fe6baa4c9f33a21ac4016 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 17:07:29 +0100 Subject: [PATCH 08/10] Fix Download commands --- docs/get_started/quickstart.mdx | 210 +++++++++----------------------- 1 file changed, 60 insertions(+), 150 deletions(-) diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index 72602d2c..223399c4 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -43,18 +43,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -65,9 +60,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -78,28 +71,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -118,7 +105,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -134,15 +121,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. @@ -289,18 +274,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -311,9 +291,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -324,28 +302,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -364,7 +336,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -380,15 +352,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. @@ -569,18 +539,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -591,9 +556,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -604,28 +567,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -644,7 +601,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -660,15 +617,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. @@ -797,18 +752,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -819,9 +769,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -832,28 +780,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -872,7 +814,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -888,15 +830,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. @@ -1023,18 +963,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -1045,9 +980,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -1058,28 +991,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -1098,7 +1025,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -1114,15 +1041,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. @@ -1245,18 +1170,13 @@ This guide takes you through your first steps with Restate. - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -1267,9 +1187,7 @@ This guide takes you through your first steps with Restate. ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -1280,28 +1198,22 @@ This guide takes you through your first steps with Restate. ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -1320,7 +1232,7 @@ This guide takes you through your first steps with Restate. ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -1336,15 +1248,13 @@ This guide takes you through your first steps with Restate. ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. From d768a8c7bd2f3818d4e60a9c9594b44adca2bed4 Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 17:08:43 +0100 Subject: [PATCH 09/10] Fix Download commands --- docs/develop/local_dev.mdx | 37 ++++++++++++------------------------- 1 file changed, 12 insertions(+), 25 deletions(-) diff --git a/docs/develop/local_dev.mdx b/docs/develop/local_dev.mdx index a5cdecc5..3a8bd7a2 100644 --- a/docs/develop/local_dev.mdx +++ b/docs/develop/local_dev.mdx @@ -12,6 +12,8 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; # Local Dev ## Running Restate Server & CLI locally +Restate is a single self-contained binary. No external dependencies needed. + @@ -30,18 +32,13 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; - Install the Restate Server and CLI by downloading the binaries with `curl` - from the [releases - page](https://github.com/restatedev/restate/releases/latest), and make them - executable: + Install the Restate Server and CLI by downloading the binaries with `curl` from the [releases page](https://github.com/restatedev/restate/releases/latest), and make them executable: ```shell !!tabs Linux-x64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=x86_64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -52,9 +49,7 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; ```shell !!tabs Linux-arm64 BIN=$HOME/.local/bin && RESTATE_PLATFORM=aarch64-unknown-linux-musl && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ @@ -65,28 +60,22 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; ```shell !!tabs MacOS-x64 BIN=/usr/local/bin && RESTATE_PLATFORM=x86_64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` ```shell !!tabs MacOS-arm64 BIN=/usr/local/bin && RESTATE_PLATFORM=aarch64-apple-darwin && \ - curl -LO - https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz - && \ + curl -LO https://github.com/restatedev/restate/releases/latest/download/restate.$RESTATE_PLATFORM.tar.gz && \ tar -xvf restate.$RESTATE_PLATFORM.tar.gz && \ chmod +x restate restate-server && \ - # Move the binaries to a directory in your PATH, for example - /usr/local/bin (needs sudo): + # Move the binaries to a directory in your PATH, for example /usr/local/bin (needs sudo): sudo mv restate $BIN && \ sudo mv restate-server $BIN ``` @@ -105,7 +94,7 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; ```shell !result npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest && + npm install --global @restatedev/restate@latest ``` @@ -121,15 +110,13 @@ import {TextAndCode} from "../../src/components/code/code/text-and-code"; ```shell docker run --name restate_dev --rm -p 8080:8080 -p 9070:9070 -p 9071:9071 \ - --add-host=host.docker.internal:host-gateway - docker.io/restatedev/restate:VAR::RESTATE_VERSION + --add-host=host.docker.internal:host-gateway docker.io/restatedev/restate:VAR::RESTATE_VERSION ``` To run commands with the Restate CLI, use the following command: ```shell - docker run -it --network=host - docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls + docker run -it --network=host docker.io/restatedev/restate-cli:VAR::RESTATE_VERSION invocations ls ``` Replace `invocations ls` by the CLI command you want to run. From 3045770424e771495d28536cd04c706b8244dc6a Mon Sep 17 00:00:00 2001 From: Giselle van Dongen Date: Thu, 31 Oct 2024 17:12:05 +0100 Subject: [PATCH 10/10] Only show npm Restate download for TS --- docs/get_started/quickstart.mdx | 80 --------------------------------- 1 file changed, 80 deletions(-) diff --git a/docs/get_started/quickstart.mdx b/docs/get_started/quickstart.mdx index 223399c4..b0792f1e 100644 --- a/docs/get_started/quickstart.mdx +++ b/docs/get_started/quickstart.mdx @@ -330,22 +330,6 @@ This guide takes you through your first steps with Restate. ``` - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - To run the Restate Server: @@ -595,22 +579,6 @@ This guide takes you through your first steps with Restate. ``` - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - To run the Restate Server: @@ -808,22 +776,6 @@ This guide takes you through your first steps with Restate. ``` - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - To run the Restate Server: @@ -1019,22 +971,6 @@ This guide takes you through your first steps with Restate. ``` - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - To run the Restate Server: @@ -1226,22 +1162,6 @@ This guide takes you through your first steps with Restate. ``` - - - Install Restate Server and CLI via: - - ```shell !result - npm install --global @restatedev/restate-server@latest && - npm install --global @restatedev/restate@latest - ``` - - - Then run the Restate Server with: - ```shell !result - restate-server - ``` - - To run the Restate Server: