ifc-commit/docs/install.md
2026-03-24 16:11:15 +01:00

64 lines
1.2 KiB
Markdown

# Installation
## Requirements
- Python 3.11+
- [uv](https://docs.astral.sh/uv/)
- nginx
- systemd
## Clone
```bash
git clone https://gitaec.org/rvba/ifc-commit
cd ifc-commit
```
## Install dependencies
```bash
uv sync
```
## Development server
```bash
make web-dev
```
Starts uvicorn on `http://127.0.0.1:8095` with auto-reload.
## Production deployment
### 1. Install the systemd service and nginx config
```bash
make install-service
```
This will:
- Write `/etc/systemd/system/ifc-commit.service` (filled with the current working directory and user)
- Symlink `files/ifc-commit.conf` into `/etc/nginx/sites-enabled/`
- Enable and start the `ifc-commit` systemd service
- Reload nginx
### 2. Configure your domain
Edit `files/ifc-commit.conf` and set `server_name` to your domain before running `make install-service`.
### 3. Manage the service
```bash
make start # sudo systemctl start ifc-commit
make stop # sudo systemctl stop ifc-commit
```
Check logs:
```bash
journalctl -u ifc-commit -f
```
## Personal access token
The web UI has a **Personal access token** field. The token is saved in the browser's `localStorage` and never stored server-side. Generate one from your Forgejo account settings.