Currently the only supported method to install FeedBunch is using docker-compose. You will need a computer with Docker up and running and docker-compose installed. You can also run it in a docker-swarm cluster.
Warning: after each deployment FeedBunch will take some time (up to a few minutes) to be available, because the feedbunch-webapp service has to recompile assets every time a new container is created. You can follow this process in the feedbunch-webapp service logs.
You can find a sample docker-compose.yml file here. You should customize some values in the file before using it to deploy the stack.
Some environment variables are present multiple times in the docker-compose.yml file, because they are passed to multiple services. The tables below indicate which services are passed each environment variable. You must write the same value every time an environment variable appears in the file; this is, each environment variable must have just one value, no matter how many time it appears in the file.
The whole stack only exports one HTTP port, used to access the web GUI. It's exported by the webapp
service
and it takes the value 9292 by default. You can customize the port mapping but take care not to change the internal
9292 port; i.e. if you want the app to be accessible at port 8000 you can replace the port mapping in the file
with:
ports:
- '8000:9292'
TLS is not supported natively. If you want your FeedBunch installation to be accessible via HTTPS, you will have to configure a reverse proxy that handles TLS.
When the stack is deployed for the first time, an administrator account will be created. You can customize this account setting environment variables in the docker-compose.yml file when deploying for the first time:
Environment variable | Services | Default value |
---|---|---|
ADMIN_EMAIL | webapp, background | some@email.com |
ADMIN_USERNAME | webapp | admin |
ADMIN_PASSWORD | webapp | feedbunch_admin |
The email of this administrator account will also be used as the sender for emails sent by FeedBunch (e.g. to notify of the result of an OMPL export).
You can choose if a demo user is enabled for your FeedBunch installation. This is a user with publicly available credentials (i.e. anyone can log in as the demo user). This user is different from regular users: it cannot be deleted and any changes in its subscriptions (e.g. added or removed feeds) are reverted every hour.
Environment variable | Services | Default value |
---|---|---|
DEMO_USER_ENABLED | webapp, background | false |
You can choose whether your FeedBunch installation will allow self-signups; i.e. if anyone with a valid email address can register a user account. If you want control over who can login in your FeedBunch installation, disable self-signups. If self-signups are disabled only an administrator can create new user accounts.
Environment variable | Services | Default value |
---|---|---|
SIGNUPS_ENABLED | webapp, background | false |
Self-signups are disabled by default.
FeedBunch must connect to an SMTP server to send emails. By default it attempts to send emails through gmail, but you can tell it to use another SMTP server if you want.
Environment variable | Services | Default value |
---|---|---|
SMTP_ADDRESS | webapp, background | smtp.gmail.com |
SMTP_PORT | webapp, background | 587 |
SMTP_USER_NAME | webapp, background | gmail_user |
SMTP_PASSWORD | webapp, background | gmail_password |
SMTP_AUTHENTICATION | webapp, background | plain |
Some emails sent by FeedBunch will contain links to your installation. For these links to be correct, you'll have to configure the URL in which your FeedBunch installation can be accessed in an environment variable:
Environment variable | Services | Default value |
---|---|---|
EMAIL_LINKS_URL | webapp, background | https://www.feedbunch.com |
Some docker volumes must be shared between services in the docker stack for FeedBunch to work correctly. It is suggested you don't change the volumes configuration in the sample docker-compose.yml file.
There's usually no need to access these volumes from outside FeedBunch, so it is suggested you allow Docker to manage them instead of bind-mounting them to directories in your host.