96 lines
2.6 KiB
Markdown
96 lines
2.6 KiB
Markdown
<h1 align="center">
|
|
<br>
|
|
<img
|
|
src="https://git.gbrown.org/gib/techtracker/raw/branch/main/public/favicon.png"
|
|
alt="Next Template"
|
|
width="100"
|
|
>
|
|
<br>
|
|
<b>Tech Tracker</b>
|
|
<br>
|
|
</h1>
|
|
|
|
<details>
|
|
<summary>
|
|
<h2>How to run:</h2>
|
|
</summary>
|
|
|
|
### Clone the Repository & Install Dependencies
|
|
|
|
```bash
|
|
git clone https://git.gbrown.org/gib/techtracker.git
|
|
```
|
|
|
|
```bash
|
|
cd techtracker
|
|
```
|
|
|
|
I would recommend using [bun](https://bun.sh/) to install dependencies.
|
|
|
|
```bash
|
|
bun i
|
|
```
|
|
|
|
You will also need docker installed on whatever host you plan to run the Supabase instance from, whether locally, or on a home server or a VPS or whatever. Or you can just use the Supabase SaaS if you want to have a much easier time, probably. I wouldn't know!
|
|
|
|
### Add your environment variables
|
|
|
|
Copy the example environment variable files and paste them in the same directory named `.env`.
|
|
|
|
```bash
|
|
cp ./env.example ./.env
|
|
```
|
|
|
|
```bash
|
|
cp ./host/convex/docker/env.example ./host/convex/docker/.env
|
|
```
|
|
|
|
### Start self hosted convex
|
|
|
|
The basic gist is to run the commands below after you have filled out the environment variables you plan to use, but you should ultimately follow the [guide they provide](https://github.com/get-convex/convex-backend/tree/main/self-hosted)
|
|
```bash
|
|
cd ./host/convex/docker
|
|
sudo docker compose up -d
|
|
sudo docker compose exec convex-backend ./generate_admin_key.sh
|
|
```
|
|
|
|
### Start your development environment.
|
|
|
|
Run
|
|
|
|
```bash
|
|
bun dev
|
|
```
|
|
|
|
to start your development environment with turbopack
|
|
|
|
You can also run
|
|
|
|
```bash
|
|
bun dev:slow
|
|
```
|
|
|
|
to start your development environment with webpack
|
|
|
|
### Start your Production Environment.
|
|
|
|
There are Dockerfiles & docker compose files that can be found in the `./scripts/docker` folder for the Next.js website. There is also a script called `reload_container` located in the `./scripts/` folder which was created to quickly update the container, but this will give you a better idea of what you need to do. First, build the image with
|
|
|
|
```bash
|
|
sudo docker compose -f ./host/next/docker/compose.yml build
|
|
```
|
|
|
|
then you can run the container with
|
|
|
|
```bash
|
|
sudo docker compose -f ./host/next/docker/compose up -d
|
|
```
|
|
|
|
Now, you may end up with some build errors. The `reload_containers` script swaps out the next config before it runs the docker build to skip any build errors, so you may want to do this as well, though you are welcome to fix the build errors as well, of course!
|
|
|
|
### Fin
|
|
|
|
I am sure I am missing a lot of stuff so feel free to open an issue if you have any questions or if you feel that I should add something here!
|
|
|
|
</details>
|