@@ -2,18 +2,58 @@
## Run it
+First step, clone this git repository and cd into it.
+
### Locally via Node/Yarn
+#### Development mode
+
+Make sure your `.env.local` file is correctly setup and includes all the environment
+variables present in the example `.env` file. Make sure no value is set to `fake`.
+
+```sh
+$ yarn dev
+$ yarn typecheck
+$ yarn test
+```
+
+Also when changing the Prisma schema don't forget to make a migration with:
+
+```sh
+$ yarn migrate:dev
+```
+
+#### Production-like mode
+
+Make sure your `.env.production` file is correctly setup and includes all the environment
+variables present in the example `.env` file. Make sure no value is set to `fake`.
+
+```sh
+$ yarn build
+$ cp .env.production dist/.env.production
+$ DATABASE_URL='postgresql://...from.env.production...' yarn migrate:deploy
+$ yarn start
+```
+
### Using Docker
```sh
+$ docker run -p 1337:1337 \
+ -e COOKIE_NAME='gitfoss_ssid' \
+ -e COOKIE_SECRET='gitfoss-cookie-secret' \
+ -e DATABASE_URL='postgresql://postgres:change_me_password@gitfoss_db:5432/gitfoss?sslmode=disable&connection_limit=3' \
+ -e DEPLOYMENT_DOMAIN='local-app.localhost' \
+ -e DEPLOYMENT_SCHEME='http' \
+ -e GIT_REPOSITORIES_ROOT='/var/lib/gitfoss/repos' \
+ docker.io/library/gitfoss_web:latest;
+# Get the container id then run migrations
+$ docker exec -it container_id_here yarn migrate:deploy
```
### Using Docker Compose
```sh
$ docker-compose up -d
-$ docker-compose exec web cat .gitstamp
$ docker-compose exec web yarn migrate:deploy
```