mirror of
https://github.com/DorkSquadRR/DorkNet.git
synced 2026-10-25 15:08:47 -07:00
115 lines
3.2 KiB
Markdown
115 lines
3.2 KiB
Markdown
# Advanced setup
|
|
|
|
Use this path if you are running a community server, deploying to a VPS,
|
|
testing the server from source, or working on DorkNet itself.
|
|
|
|
The important bit: `main` is not the server branch. It only has the
|
|
launcher, the CLI, `versions.json`, and these shared docs. The actual
|
|
ASP.NET server, admin UI, client mod, Dockerfile, and deploy scripts live
|
|
on the version branches.
|
|
|
|
## Pick the right branch
|
|
|
|
Use the branch that matches the Rec Room build your players will run.
|
|
|
|
| Rec Room install | Branch |
|
|
|---|---|
|
|
| 2020.12.18 | `december-2020-12-18` |
|
|
| 2020.03.10 or 2020.03.06 | `march-2020-03-10` |
|
|
|
|
The same list is in [`../BRANCHES.md`](../BRANCHES.md) and
|
|
[`../versions.json`](../versions.json). If the client build is not in
|
|
that list, DorkNet will not know how to talk to it.
|
|
|
|
## Clone the server branch
|
|
|
|
Example for December:
|
|
|
|
```bash
|
|
git clone --branch december-2020-12-18 https://github.com/DorkSquadRR/DorkNet
|
|
cd DorkNet
|
|
```
|
|
|
|
Example for March:
|
|
|
|
```bash
|
|
git clone --branch march-2020-03-10 https://github.com/DorkSquadRR/DorkNet
|
|
cd DorkNet
|
|
```
|
|
|
|
From that checkout, read the branch's own `README.md` first. If the
|
|
branch has `docs/deploy.md`, use that as the production deploy guide.
|
|
Those files are more accurate than any generic command copied from
|
|
`main`, because each branch is laid out a little differently.
|
|
|
|
## What you usually need
|
|
|
|
For a real hosted server, plan on:
|
|
|
|
- a domain or tunnel that can route the Rec Room service subdomains,
|
|
- a Photon Realtime AppId,
|
|
- a Photon Voice AppId if you want in-game voice,
|
|
- persistent storage for the server database,
|
|
- object/blob storage if the branch's deploy guide calls for it,
|
|
- the matching 2020 Rec Room client on each player machine.
|
|
|
|
For Photon setup, use [`photon-setup.md`](photon-setup.md).
|
|
|
|
## Running from source
|
|
|
|
On a version branch, the usual local loop is:
|
|
|
|
```bash
|
|
dotnet run --project DorkNet.Server
|
|
```
|
|
|
|
Then follow that branch's README for the exact environment variables,
|
|
database settings, and client patching steps.
|
|
|
|
For admin UI work on a version branch:
|
|
|
|
```bash
|
|
cd DorkNet.Server/admin-ui
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
For public site work, use the same pattern under `DorkNet.Server/site`.
|
|
|
|
## Docker and production deploys
|
|
|
|
There is no top-level `docker/` folder on the active branches.
|
|
Start from the branch README and deploy guide instead.
|
|
|
|
The version branches contain the current Dockerfile and deploy docs.
|
|
December has the newer microservices/Dokploy path in `docs/deploy.md`.
|
|
March is the older single-server branch. If you are unsure which one you
|
|
are on, run:
|
|
|
|
```bash
|
|
git branch --show-current
|
|
```
|
|
|
|
## Updating
|
|
|
|
Branches are independent. Pulling `main` updates the launcher docs and
|
|
manifest, not the server code you are running.
|
|
|
|
To update a server checkout:
|
|
|
|
```bash
|
|
git checkout december-2020-12-18 # or march-2020-03-10
|
|
git pull
|
|
```
|
|
|
|
Then follow that branch's deploy guide for rebuild/restart steps.
|
|
|
|
## Backups
|
|
|
|
Back up the database and any blob/image storage before you upgrade. The
|
|
exact paths depend on the branch and deploy mode, so use the branch's
|
|
own deploy guide rather than guessing from this page.
|
|
|
|
For the launcher/easy-mode database, the local SQLite file lives under
|
|
the DorkNet app data folder shown in the launcher's Settings view.
|