Skip to content

Commit

Permalink
Created multiple docker files and updated readme to latest version (#553
Browse files Browse the repository at this point in the history
)

* Created docker-compose for postgres, network_mode: host

* remove backend URI from riven compose since frontend uses it.

* updated compose files for sqlite and postgres remove #comments from line.

* Updated Backend Readme added 2 examples SQLite and Postgres and Backend Only - updated docker-compose files for (port specific and network_mode: host

* cleared double line (typo) in readme
  • Loading branch information
hjongedijk authored Jul 22, 2024
1 parent 652671e commit a2a2baf
Show file tree
Hide file tree
Showing 2 changed files with 177 additions and 14 deletions.
137 changes: 123 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,22 +82,131 @@ We are constantly adding features and improvements as we go along and squashing

Create a `docker-compose.yml` file with the following contents:

docker-compose.yml (Backend Only)
```yml
---
services:
riven:
image: spoked/riven:latest
container_name: riven
restart: unless-stopped
ports:
- "8080:8080"
tty: true
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- RIVEN_DATABASE_HOST=sqlite:////riven/data/media.db
volumes:
- ./riven-data:/riven/data
- /mnt:/mnt
```

docker-compose.yml (Frontend + Backend + SQLite)
```yml
---
services:
riven-frontend:
image: spoked/riven-frontend:latest
container_name: riven-frontend
restart: unless-stopped
network_mode: host
tty: true
environment:
- PUID=1000
- PGID=1000
- ORIGIN=http://localhost:3000
- BACKEND_URL=http://127.0.0.1:8080
- TZ=Europe/Amsterdam
depends_on:
riven:
condition: service_healthy
riven:
image: spoked/riven:latest
container_name: riven
restart: unless-stopped
network_mode: host
tty: true
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- RIVEN_DATABASE_HOST=sqlite:////riven/data/media.db
healthcheck:
test: curl -s http://localhost:8080 >/dev/null || exit 1
interval: 30s
timeout: 10s
retries: 10
volumes:
- ./riven-data:/riven/data
- /mnt:/mnt
```

docker-compose.yml (Frontend + Backend + Postgres)
```yml
---
services:
riven:
image: spoked/riven:latest
container_name: riven
restart: unless-stopped
environment:
PUID: "1000"
PGID: "1000"
ORIGIN: "http://localhost:3000" # IMP: read below to avoid CORS issues
BACKEND_URL: http://127.0.0.1:8080 # optional
ports:
- "3000:3000"
volumes:
- ./data:/riven/data
- /mnt:/mnt
riven-frontend:
image: spoked/riven-frontend:latest
container_name: riven-frontend
restart: unless-stopped
ports:
- "3000:3000"
tty: true
environment:
- PUID=1000
- PGID=1000
- ORIGIN=http://localhost:3000
- BACKEND_URL=http://127.0.0.1:8080
- TZ=Europe/Amsterdam
depends_on:
riven:
condition: service_healthy

riven:
image: spoked/riven:latest
container_name: riven
restart: unless-stopped
ports:
- "8080:8080"
tty: true
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- RIVEN_DATABASE_HOST=postgresql+psycopg2://postgres:postgres@riven_postgres/riven
healthcheck:
test: curl -s http://localhost:8080 >/dev/null || exit 1
interval: 30s
timeout: 10s
retries: 10
volumes:
- ./riven-data:/riven/data
- /mnt:/mnt
depends_on:
riven_postgres:
condition: service_healthy

riven_postgres:
image: postgres:16.3-alpine3.20
container_name: riven-db
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: riven
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 30s
timeout: 10s
retries: 5
networks:
- postgres-internal

networks:
postgres-internal:
default:
```

Then run `docker compose up -d` to start the container in the background. You can then access the web interface at `http://localhost:3000` or whatever port and origin you set in the `docker-compose.yml` file.
Expand Down
54 changes: 54 additions & 0 deletions docker-compose-postgres-host.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
services:
riven-frontend:
image: spoked/riven-frontend:latest
container_name: riven-frontend
restart: unless-stopped
network_mode: host
tty: true
environment:
- PUID=1000
- PGID=1000
- ORIGIN=http://localhost:3000
- BACKEND_URL=http://127.0.0.1:8080
- TZ=Europe/Amsterdam
depends_on:
riven:
condition: service_healthy

riven:
image: spoked/riven:latest
container_name: riven
restart: unless-stopped
network_mode: host
tty: true
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- RIVEN_DATABASE_HOST=postgresql+psycopg2://postgres:postgres@localhost/riven
healthcheck:
test: curl -s http://localhost:8080 >/dev/null || exit 1
interval: 30s
timeout: 10s
retries: 10
volumes:
- ./riven-data:/riven/data
- /mnt:/mnt
depends_on:
riven_postgres:
condition: service_healthy

riven_postgres:
image: postgres:16.3-alpine3.20
container_name: riven-db
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: riven
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 30s
timeout: 10s
retries: 5
network_mode: host

0 comments on commit a2a2baf

Please sign in to comment.