Separate out GQL proxy server from uniswap-urbit stack #681

Merged
prathamesh0 merged 6 commits from pm-separate-out-proxy into main 2023-12-06 05:11:10 +00:00
8 changed files with 110 additions and 88 deletions
Showing only changes of commit 5a31d03fb0 - Show all commits

View File

@ -0,0 +1,8 @@
version: "0.1"
name: proxy-server
repos:
- github.com/cerc-io/watcher-ts@v0.2.78
containers:
- cerc/watcher-ts
pods:
- proxy-server

View File

@ -0,0 +1,19 @@
version: "3.2"
services:
proxy-server:
image: cerc/watcher-ts:local
restart: unless-stopped
working_dir: /app/packages/cli
environment:
PROXY_UPSTREAM: ${CERC_PROXY_UPSTREAM}
PROXY_ORIGIN_HEADER: ${CERC_PROXY_ORIGIN_HEADER}
command: ["sh", "-c", "yarn proxy"]
ports:
- "4000"
healthcheck:
test: ["CMD", "nc", "-v", "localhost", "4000"]
interval: 20s
timeout: 5s
retries: 15
start_period: 10s

View File

@ -1,15 +0,0 @@
version: "3.2"
services:
uniswap-gql-proxy:
image: cerc/uniswap-interface:local
restart: on-failure
command: ["bash", "-c", "yarn proxy-gql"]
ports:
- "4000"
healthcheck:
test: ["CMD", "nc", "-v", "localhost", "4000"]
interval: 20s
timeout: 5s
retries: 15
start_period: 10s

View File

@ -0,0 +1,74 @@
# Proxy Server
Instructions to setup and deploy a HTTP proxy server
## Setup
Clone required repository:
```bash
laconic-so --stack proxy-server setup-repositories --pull
# If this throws an error as a result of being already checked out to a branch/tag in a repo, remove the repositories mentioned below and re-run the command
```
Build the container image:
```bash
laconic-so --stack proxy-server build-containers
```
## Create a deployment
* First, create a spec file for the deployment, which will allow mapping the stack's ports and volumes to the host:
```bash
laconic-so --stack proxy-server deploy init --output proxy-server-spec.yml
```
* Edit `network` in spec file to map container ports to same ports in host:
```yml
...
network:
ports:
proxy-server:
- '4000:4000'
...
```
* Once you've made any needed changes to the spec file, create a deployment from it:
```bash
laconic-so --stack proxy-server deploy create --spec-file proxy-server-spec.yml --deployment-dir proxy-server-deployment
```
* Inside the deployment directory, open the file `config.env` and set the following env variables:
```bash
# Upstream endpoint
CERC_PROXY_UPSTREAM=
# Origin header to be used (Optional)
CERC_PROXY_ORIGIN_HEADER=
```
## Start the stack
Start the deployment:
```bash
laconic-so deployment --dir proxy-server-deployment start
```
* List and check the health status of the container using `docker ps`
* The proxy server will now be listening at http://localhost:4000
## Clean up
To stop the service running in background:
```bash
laconic-so deployment --dir proxy-server-deployment stop
```

View File

@ -0,0 +1,8 @@
version: "0.1"
name: proxy-server
repos:
- github.com/cerc-io/watcher-ts@v0.2.78
containers:
- cerc/watcher-ts
pods:
- proxy-server

View File

@ -1,64 +0,0 @@
# Uniswap GQL Proxy
Instructions to setup and deploy a Uniswap GQL proxy server
## Setup
Clone required repository:
```bash
laconic-so --stack uniswap-gql-proxy setup-repositories --pull
# If this throws an error as a result of being already checked out to a branch/tag in a repo, remove the repositories mentioned below and re-run the command
```
Build the container image:
```bash
laconic-so --stack uniswap-gql-proxy build-containers
```
## Create a deployment
First, create a spec file for the deployment, which will allow mapping the stack's ports and volumes to the host:
```bash
laconic-so --stack uniswap-gql-proxy deploy init --output uniswap-gql-proxy-spec.yml
```
Edit `network` in spec file to map container ports to same ports in host:
```
...
network:
ports:
uniswap-gql-proxy:
- '4000:4000'
...
```
Once you've made any needed changes to the spec file, create a deployment from it:
```bash
laconic-so --stack uniswap-gql-proxy deploy create --spec-file uniswap-gql-proxy-spec.yml --deployment-dir uniswap-gql-proxy-deployment
```
## Start the stack
Start the deployment:
```bash
laconic-so deployment --dir uniswap-gql-proxy-deployment start
```
* List and check the health status of the container using `docker ps`
* The Uniswap GQL server will now be listening at http://localhost:4000
## Clean up
To stop the service running in background:
```bash
laconic-so deployment --dir uniswap-gql-proxy-deployment stop
```

View File

@ -1,8 +0,0 @@
version: "0.1"
name: uniswap-gql-proxy
repos:
- github.com/cerc-io/uniswap-interface@laconic # TODO: Use release
containers:
- cerc/uniswap-interface
pods:
- uniswap-gql-proxy

View File

@ -7,5 +7,5 @@ containers:
- cerc/urbit-globs-host
pods:
- uniswap-interface
- uniswap-gql-proxy
- proxy-server
- uniswap-urbit