···67676868```bash
6969cd server
7070-sudo go run ./cmd/lunar-tear \
7070+go run ./cmd/lunar-tear \
7171 --host 10.0.2.2 \
7272- --http-port 8080
7272+ --http-port 8080 \
7373+ --grpc-port 8003
7374```
74757575-`sudo` is needed because gRPC binds to port 443 (privileged). On Linux you can use `setcap` instead:
7676+The default gRPC port is 443, which requires `sudo` (privileged port). Use `--grpc-port` with a high port to avoid this. If you do need port 443, either use `sudo` or grant the binary the capability on Linux:
76777778```bash
7879go build -o lunar-tear ./cmd/lunar-tear
···82838384### Ports
84858585-| Protocol | Port | Notes |
8686-| -------- | ---- | ---------------------------------------------------- |
8787-| gRPC | 443 | hardcoded by the client, not configurable |
8888-| HTTP | 8080 | Octo asset API + game web pages (`--http-port` flag) |
8686+| Protocol | Port | Notes |
8787+| -------- | ---- | ----------------------------------------------------------- |
8888+| gRPC | 443 | default; configurable with `--grpc-port` (requires patched client) |
8989+| HTTP | 8080 | Octo asset API + game web pages (`--http-port` flag) |
89909091### Flags
91929292-| Flag | Default | Description |
9393-| ------------- | ------------ | ------------------------------- |
9494-| `--host` | `127.0.0.1` | hostname/IP given to the client |
9595-| `--http-port` | `8080` | HTTP/Octo server port |
9696-| `--db` | `db/game.db` | SQLite database path |
9393+| Flag | Default | Description |
9494+| ------------- | ------------ | ---------------------------------------------------- |
9595+| `--host` | `127.0.0.1` | hostname/IP given to the client |
9696+| `--http-port` | `8080` | HTTP/Octo server port |
9797+| `--grpc-port` | `443` | gRPC server port (client must be patched to match) |
9898+| `--db` | `db/game.db` | SQLite database path |
979998100### Docker
99101