Add notes about ownership glitches + using prebuilt

This commit is contained in:
Jack Kingsman
2026-02-22 12:42:11 -08:00
parent 7542cc1142
commit 00aa212049
3 changed files with 26 additions and 3 deletions

View File

@@ -35,5 +35,5 @@ RUN mkdir -p /app/data
EXPOSE 8000
# Run the application
# Run the application (we retain root for max compatibility)
CMD ["uv", "run", "uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]

View File

@@ -106,6 +106,27 @@ The database is stored in `./data/` (bind-mounted), so the container shares the
docker compose up -d --build
```
To use the prebuilt Docker Hub image instead of building locally, replace:
```yaml
build: .
```
with:
```yaml
image: jkingsman/remoteterm-meshcore:latest
```
Then run:
```bash
docker compose pull
docker compose up -d
```
The container runs as root by default for maximum serial passthrough compatibility across host setups. On Linux, if you switch between native and Docker runs, `./data` can end up root-owned. If you do not need that compatibility behavior, you can enable the optional `user: "${UID:-1000}:${GID:-1000}"` line in `docker-compose.yaml` to keep ownership aligned with your host user.
To stop:
```bash
@@ -193,10 +214,11 @@ For Docker Compose, generate the cert and add the volume mounts and command over
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes -subj '/CN=localhost'
```
Then add to the `remoteterm` service in `docker-compose.yaml`:
Then add to the `remoteterm` service in `docker-compose.yaml` (keep your existing `./data:/app/data` mount):
```yaml
volumes:
- ./data:/app/data
- ./cert.pem:/app/cert.pem:ro
- ./key.pem:/app/key.pem:ro
command: uv run uvicorn app.main:app --host 0.0.0.0 --port 8000 --ssl-keyfile=/app/key.pem --ssl-certfile=/app/cert.pem

View File

@@ -1,6 +1,8 @@
services:
remoteterm:
build: .
# Optional on Linux: run container as your host user to avoid root-owned files in ./data
# user: "${UID:-1000}:${GID:-1000}"
ports:
- "8000:8000"
volumes:
@@ -26,4 +28,3 @@ services:
# devices:
# - /dev/ttyUSB0:/dev/ttyUSB0
restart: unless-stopped