# Deploy
## Setup
* Build registry CLI image:
```bash
docker build -t cerc/laconic-registry-cli ./sol-mem-gen
# Builds image cerc/laconic-registry-cli:latest
```
* Configure `userKey` and `bondId` in registry CLI [sol-mem-gen/config](./sol-mem-gen/config.yml)
* Add configuration for registry operations:
```bash
cp sol-mem-gen/.registry.env.example sol-mem-gen/.registry.env
# Fill in the required values
nano sol-mem-gen/.registry.env
```
* Add configuration for the app:
```bash
curl -s https://git.vdb.to/deep-stack/sol-mem-gen/raw/branch/main/.env.example -o sol-mem-gen/.app.env
# Fill in the required values
nano sol-mem-gen/.app.env
```
* Create a dir for `sol-token-locker` deployment:
```bash
mkdir sol-token-locker
```
* Follow [instructions](https://git.vdb.to/deep-stack/sol-token-locker/src/branch/main/stack-orchestrator/stacks/sol-token-locker/README.md) to setup the `sol-token-locker` stack in `./sol-token-locker`
## Run
### sol-mem-gen
* Update configuration for the app as required:
```bash
nano sol-mem-gen/.app.env
```
* Deploy `sol-mem-gen` App:
```bash
docker run -it \
-v ./sol-mem-gen:/app/deploy -w /app/deploy \
cerc/laconic-registry-cli:latest \
./deploy.sh
```
* Check deployment logs on deployer UI:
* Visit deployed app:
* To redeploy the app (using main branch), repeat the previous steps
### sol-token-locker
* Update configuration for token locker as required:
```bash
cd sol-token-locker
nano sol-token-locker-deployment/config.env
```
* [Config reference](https://git.vdb.to/deep-stack/sol-token-locker/src/branch/main/stack-orchestrator/stacks/sol-token-locker/README.md#configuration)
* Start the deployment:
```bash
laconic-so deployment --dir sol-token-locker-deployment start
```
* Follow logs:
```bash
laconic-so deployment --dir sol-token-locker-deployment logs sol-token-locker -f
```
* For updating the deployment:
```bash
# Stop the deployment
laconic-so deployment --dir sol-token-locker-deployment stop
# Update the config as required
nano sol-token-locker-deployment/config.env
# Re-start deployment
laconic-so deployment --dir sol-token-locker-deployment start
```