Files
commafeed/commafeed-server/src/main/docker/README.md

86 lines
2.7 KiB
Markdown
Raw Normal View History

# CommaFeed
Official docker images for https://github.com/Athou/commafeed/
## Quickstart
Start CommaFeed with an embedded database. Then login as `admin/admin` on http://localhost:8082/
### docker
`docker run --name commafeed --detach --publish 8082:8082 --restart unless-stopped --volume /path/to/commafeed/db:/commafeed/data --memory 256M athou/commafeed:latest-h2`
### docker-compose
```
services:
commafeed:
image: athou/commafeed:latest-h2
restart: unless-stopped
volumes:
- /path/to/commafeed/db:/commafeed/data
deploy:
resources:
limits:
memory: 256M
ports:
- 8082:8082
```
## Advanced
2024-08-18 09:45:44 +02:00
While using the H2 embedded database is perfectly fine for small instances, you may want to have more control over the
database. Here's an example that uses postgresql (note the different docker tag):
```
services:
commafeed:
image: athou/commafeed:latest-postgresql
restart: unless-stopped
environment:
- QUARKUS_DATASOURCE_JDBC_URL=jdbc:postgresql://postgresql:5432/commafeed
- QUARKUS_DATASOURCE_USERNAME=commafeed
- QUARKUS_DATASOURCE_PASSWORD=commafeed
deploy:
resources:
limits:
memory: 256M
ports:
- 8082:8082
postgresql:
image: postgres:latest
restart: unless-stopped
environment:
POSTGRES_USER: commafeed
POSTGRES_PASSWORD: commafeed
POSTGRES_DB: commafeed
volumes:
- /path/to/commafeed/db:/var/lib/postgresql/data
```
## Configuration
2024-08-18 21:15:48 +02:00
All [CommaFeed settings](https://github.com/Athou/commafeed/blob/master/commafeed-server/doc/commafeed.adoc) are
optional and have sensible default values.
Settings are overrideable with environment variables. For instance, `config.feedRefresh().intervalEmpirical()` can be
set
with the `COMMAFEED_FEED_REFRESH_INTERVAL_EMPIRICAL=true` variable.
When logging in, credentials are stored in an encrypted cookie. The encryption key is randomly generated at startup,
meaning that you will have to log back in after each restart of the application. To prevent this, you can set the
2024-08-18 09:45:44 +02:00
`QUARKUS_HTTP_AUTH_SESSION_ENCRYPTION_KEY` variable to a fixed value (min. 16 characters).
## Docker tags
Tags are of the form `<version>-<database>[-jvm]` where:
- `<version>` is either:
2024-08-18 09:45:44 +02:00
- a specific CommaFeed version (e.g. `5.0.0`)
- `latest` (always points to the latest version)
- `master` (always points to the latest git commit)
- `<database>` is the database to use (`h2`, `postgresql`, `mysql` or `mariadb`)
- `-jvm` is optional and indicates that CommaFeed is running on a JVM, and not compiled natively. This image supports
the
arm64 platform which is not yet supported by the native image.