https://github.com/charypar/proxy-wasm-demo
Demo of extending Envoy with WebAssembly filters written in Rust
https://github.com/charypar/proxy-wasm-demo
envoy-filter envoyproxy proxy-wasm rust rust-lang webassembly
Last synced: about 1 year ago
JSON representation
Demo of extending Envoy with WebAssembly filters written in Rust
- Host: GitHub
- URL: https://github.com/charypar/proxy-wasm-demo
- Owner: charypar
- License: mit
- Created: 2020-04-14T18:44:37.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-04-10T19:36:52.000Z (about 4 years ago)
- Last Synced: 2025-03-28T06:02:05.986Z (about 1 year ago)
- Topics: envoy-filter, envoyproxy, proxy-wasm, rust, rust-lang, webassembly
- Language: Rust
- Size: 3.91 KB
- Stars: 13
- Watchers: 2
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Envoy filter with Rust and WebAssembly
This is a demo accompanying a blogpost about building Envoy filters with Rust and WebAssembly.
## Getting started
1. Install WebAssembly target for rust
```sh
$ rustup update
$ rustup target add wasm32-unknown-unknown
```
2. Install [wasme](https://docs.solo.io/web-assembly-hub/latest/reference/cli/)
```sh
$ curl -sL https://run.solo.io/wasme/install | sh
$ export PATH=$HOME/.wasme/bin:$PATH
```
3. Clone the repo and use the makefile to build and run the demo:
```sh
$ make build-image
$ make deploy-envoy
```
Now you can open . This is proxying to , reflecting request headers back at you. You should see
```
"X-Hello": "Hello world from localhost:8080"
```
which was injected by the filter.