src | 10 months ago | ||
terraform | 10 months ago | ||
.dockerignore | 10 months ago | ||
.env.example | 10 months ago | ||
.gitignore | 10 months ago | ||
.prettierignore | 10 months ago | ||
.prettierrc.json | 10 months ago | ||
Dockerfile | 10 months ago | ||
README.md | 10 months ago | ||
bun.lockb | 10 months ago | ||
deploy.sh | 10 months ago | ||
docker-compose.local.yml | 10 months ago | ||
drizzle.config.ts | 10 months ago | ||
package.json | 10 months ago | ||
tsconfig.json | 10 months ago |
This is a proof of concept for the following technologies:
Live version: https://hono-app-mkulnruqtq-ey.a.run.app/
To work locally, first install bun and then all the dependencies. For the database you can use the docker-compose file.
bun install # copy env variables and set them accordingly cp .env.example .env docker-compose -f docker-compose.local.yml up -d bun run dev
The terraform file and therefore the deployment consists of the following three main services:
admin
user, it can be used to connect to it from the internetInfrastructure changes will be applied by terraform, each Cloud Run Revision can be triggered by hand (or ideally by CI/CD).
To get started, make sure the gcloud
client as well as the docker login is installed.
There is a 60-second delay between the creation of the Artifact Registry and Cloud run, this is because Cloud Run requires the Docker image to already be present. So use this time to push the first version.
To deploy a new revision, execute bun run deploy
or bash deploy.sh
. This will first build an image, pushes it to the Registry and then triggers a new revision on Cloud Run.
The terraform state is currently stored local. To enable collaboration, this should be stored in a central storage bucket.