This repository has been archived on 2024-02-04. You can view files and clone it, but cannot push or open issues or pull requests.
flox-dockerized/README.md

91 lines
7 KiB
Markdown
Raw Normal View History

2022-04-16 01:25:32 +02:00
# flox-dockerized
[![status-badge](https://ci.44net.ch/api/badges/olofvndrhr/flox-dockerized/status.svg)](https://ci.44net.ch/olofvndrhr/flox-dockerized)
2022-04-16 01:25:32 +02:00
### This is a docker container for the flox watchlist. Be sure to check out the original project: https://github.com/devfake/flox
2022-04-16 14:37:16 +02:00
> Flox is a self hosted Movie, Series and Animes watch list. It's build on top of Laravel and Vue.js and uses [The Movie Database](https://www.themoviedb.org/) API.
> The rating based on an 3-Point system for `good`, `medium` and `bad`.
2022-04-16 01:25:32 +02:00
2022-04-16 14:37:16 +02:00
> ### [Try live demo](https://flox-demo.pyxl.dev) and [login](https://flox-demo.pyxl.dev/login) with `demo / demo` to add new stuff or change ratings.
2022-04-16 01:25:32 +02:00
<img src="https://raw.githubusercontent.com/devfake/flox/master/public/assets/screenshot.jpg" alt="drawing" width="800"/>
---
## Running the container
> This image is available for arm64 and amd64. The right version for you system will automatically be pulled.
This container only exposes port 80/tcp. It is advised to run this configuration through a reverse proxy providing SSL if the service will be exposed over the internet. Data
is saved in the container at `/flox`.
To use the container you will need to set the env variable `tmdb_api_key` with your own [TheMovieDatabase API key](https://developers.themoviedb.org/3/getting-started/introduction). It is also recommended that you set `flox_admin_pass`. On first startup you also need to set `flox_db_init` to `true`.
---
### An minimal configuration example would be:
2022-04-16 14:37:16 +02:00
2022-04-16 01:25:32 +02:00
```bash
# with docker run
cd <project_root>
2022-04-18 20:15:02 +02:00
docker run -p '80:80' --volume '/<data-directory>/:/flox/' -e tmdb_api_key=<key> -e flox_db_init=true --name flox olofvndrhr/flox-dockerized:latest
2022-04-16 01:25:32 +02:00
```
```bash
# with docker-compose (be sure to check all environment variables and change when neccesary)
cd <project_root>
nano docker-compose.yml # set tmdb_api_key & flox_init
2022-04-16 01:25:32 +02:00
docker-compose pull
docker-compose up -d
```
2022-04-16 14:37:16 +02:00
In order to create an admin user you will need to run an initialization. This can be done by running the container once with the environment variable `flox_init=true`.
2022-04-16 01:25:32 +02:00
If the env variables `flox_username` and `flox_password` are not set, the default login is: `admin:admin`.
You can then connect to [http://localhost](http://localhost) to access the application.
If you mounted the data directory, all changes will be saved through container recreation.
In the data directory is a file called `.lock`. This file controls whether or not to "reset" all application data. So don't remove the file unless you want to reset you installation.
The removed data will still be available in the running container in the directory `/tmp/flox` until you remove the container. After a reset you need to start the container with `flox_init=true` again.
2022-04-16 01:25:32 +02:00
---
## Supportet environment variables
2022-04-16 14:37:16 +02:00
| Name | Value | Description |
|---------------------------|:-------:|------------------------------------------------------------------------------------------------------------------------------------------------|
2022-04-16 14:37:16 +02:00
| tmdb_api_key | str | **(required)** The TMDB API key to use - required for startup _(https://developers.themoviedb.org/3/getting-started/introduction)_ |
| flox_init | bool | **(required)** Run db initialization at container startup _(default: false)_ |
2022-04-16 14:37:16 +02:00
| flox_https | bool | If flox should use [https](https://github.com/devfake/flox/issues/148). Mostly used for reverse proxys with ssl termination _(default: false)_ |
| flox_app_url | str | The url you will be hosting the app on _(default: http://localhost)_ |
| flox_username | str | Inital username. Will not be overwritten after the initialization |
| flox_password | str | Initial password. Will not be overwritten after the initialization |
| flox_client_uri | str | The relative path you are hosting on _(default: /)_ |
| flox_timezone | str | The timezone flox is running in _(default: UTC)_ |
| flox_daily_reminder_time | str/int | The daily reminder time _(default: 10:00)_ |
| flox_weekly_reminder_time | str/int | The weekly reminder time _(default: 20:00)_ |
| puid | int | Unix user id to run the container as (default 4444) |
| pgid | int | Unix group id to run the container as (default 4444) |
| flox_mail_driver | str | Mail driver (most likely smtp) |
| flox_mail_host | str | Hostname of the mail server |
| flox_mail_port | int | Port of the mail server (smtp port) |
| flox_mail_from | str | Email address from which flox sends the mails |
| flox_mail_username | str | User name on the mail server |
| flox_mail_password | str | User password |
| flox_mail_encryption | str | Encryption type (tls,ssl,none) |
2022-04-16 01:25:32 +02:00
---
## Contribution
Like this project? Want to contribute? Awesome! Feel free to open some pull requests or just open an issue.
## Changelogs
Changelogs can be found [here](https://github.com/olofvndrhr/flox-dockerized/blob/master/CHANGELOG.md). But they may be not fully detailled.
## License
Flox is published under the MIT license. See LICENSE for more information. All credits to [devfake](https://github.com/devfake/flox/releases)