* [FEATURE] Docker simplification and configuration generation
The Authelia binary now will attempt to generate configuration based on the latest template assuming that the config location specified on startup does not exist. If a file based backend is selected and the backend cannot be found similarly it will generate a `user_database.yml` based a template.
This will allow more seamless bootstrapping of an environment no matter the deployment method.
We have also squashed the Docker volume requirement down to just `/config` thus removing the requirement for `/var/lib/authelia` this is primarily in attempts to simplify the Docker deployment.
Users with the old volume mappings have two options:
1. Change their mappings to conform to `/config`
2. Change the container entrypoint from `authelia --config /config/configuration.yml` to their old mapping
* Adjust paths relative to `/etc/authelia` and simplify to single volume for compose
* Add generation for file backend based user database
* Refactor Docker volumes and paths to /config
* Refactor Docker WORKDIR to /app
* Fix integration tests
* Update BREAKING.md for v4.20.0
* Run go mod tidy
* Fix log_file_path in miscellaneous.md docs
* Generate config and userdb with 0600 permissions
* Fix log_file_path in config.template.yml
* [FEATURE] Embed static assets in Go binary
* Refactor/consolidate code and specify public_html via configuration
* Update docs and config template for assets
* Update AUR package pre-requisites and systemd unit
* Include static assets as Buildkite and GitHub artifacts
* Remove references to PUBLIC_DIR
* Only serve assets via embedded filesystem and remove configuration references
* Update authelia-scripts helper to build the embedded filesystem
* Mock the embedded filesystem for unit tests
Add to gitignore to ensure this isn't overwritten.
* Move go:generate to satisfy linter
* [Docker] Create Lite docker-compose.yml example
* [Docker] Update README.md with 3 compose bundles {Local,Lite,Full}
* [DOCS] Update Traefik2 proxy example
* [Docker] Create Local docker-compose.yml example
* [MISC] Update examples to utilise Traefik 2.2
This change enables global http -> https redirection.
* [Docker] Update Local compose to utilise loopback address
* [Docker] Drop compose version to 3.3 to cater for more distros
* [DOCS] Adjust Getting Started
* [Docker] Tweak Local bundle setup for OSX
* [Docker] Optimise setup.sh for Local bundle
* [Docker] Fix read-only mounting of user database
* [DOCS] Implement feedback for compose bundles
* [DOCS] Provide feedback on self-signed certificates
* [DOCS] Implement additional feedback for compose bundles
Co-authored-by: Clément Michaud <clement.michaud34@gmail.com>