# Deploy
## Prerequisites
This project requires pricing records for cost of deployment and cost of alnt to be published
- Cost of deployment: `lrn://laconic/pricing/webapp-deployment`
- Cost of alnt: `lrn://laconic/pricing/alnt`
If these records are not available, [follow these steps to publish them](./publish-pricing.md)
## Setup
### gor-deploy
- Clone the repo:
```bash
git clone git@git.vdb.to:LaconicNetwork/gor-deploy.git
cd gor-deploy/deploy
```
- Build registry CLI image:
```bash
docker build -t cerc/laconic-registry-cli .
# Builds image cerc/laconic-registry-cli:latest
```
- Configure `userKey` and `bondId` in the [registry CLI config](./config.yml):
```bash
nano config.yml
```
- Add configuration for registry operations:
```bash
cp .registry.env.example .registry.env
# Fill in the required values
nano .registry.env
```
- Add configuration for the app:
```bash
curl -s https://git.vdb.to/LaconicNetwork/gor-deploy/src/branch/main/.env.example -o .app.env
# Fill in the required values
nano .app.env
```
## Run
- Deploy `gor-deploy` App:
```bash
# In gor-deploy/deploy dir
docker run -it \
-v ./:/app/deploy -w /app/deploy \
-e DEPLOYMENT_DNS=gor-deploy \
cerc/laconic-registry-cli:latest \
./deploy.sh
```
- Check deployment logs on deployer UI:
- Visit deployed app:
### Remove deployment
- Remove deployment:
```bash
# In gor-deploy/deploy dir
docker run -it \
-v ./:/app/deploy -w /app/deploy \
-e DEPLOYMENT_RECORD_ID= \
cerc/laconic-registry-cli:latest \
./remove-deployment.sh
```