33 lines
2.2 KiB
Markdown
33 lines
2.2 KiB
Markdown
# Deploying a production instance
|
|
Hi fellow sysadmins!
|
|
First of all, I want to thank you for using my piece of software.
|
|
The instructions can be found below
|
|
|
|
## Deploying a basic instance
|
|
To deploy a basic instance for general public use, follow these simple steps:
|
|
1. Clone this repo
|
|
2. Copy `docker-compose.prod.yml` to `docker-compose.yml` and edit it to fit your environment
|
|
3. Now, there are a few config files that need to be edited by you: `.env`, `filed/.env` and `janitord/.env`. Each directory contains an `.env.example`, and the configuration is pretty straightforward. However, if you are lost check this out: [filed config](#filed-configuration), [janitord config](#janitord-configuration).
|
|
4. Configure fileD using `filed/config/filed.toml`. The example is in the same folder. Example contains a lot of self-documenting comments, so it should be pretty simple too.
|
|
5. Set `REDIS_PASS` to a secure long string. Not exactly required, but this is something you would want to do
|
|
6. Create and start containers with `docker-compose up -d`
|
|
7. Route your top level reverse proxy to the `caddy` service or to the port that you opened via the docker compose file.
|
|
|
|
## More extensive configuration
|
|
Well, generally, time-wise, it is not really a good idea to create a custom services configuration.
|
|
However, I will guide you through the basic minimal configuration.
|
|
|
|
Basically, the most minimal blek!File is a fileD service connected to a redis database.
|
|
I think that if you are clinically insance, you can set these up as a systemd services or a `screen`ed program.
|
|
|
|
However, its not really recommended to run this without janitorD as unused files will just clog up your filesystem.
|
|
The two requirements for janitorD are to have access to the fileD's usercontent directory and the Redis database.
|
|
The default docker configuration mounts `/opt/user_content` to the same volume for both fileD and janitorD.
|
|
|
|
## FileD configuration
|
|
Unless you are running in some kind of super customized docker compose environment, just copying the `.env.example` to `.env` should be enough to get it to run.
|
|
|
|
Don't forget to set the `REDIS_PASS` to the same value across all services
|
|
|
|
## JanitorD configuration
|
|
Same as [filed config](#filed-configuration), don't forget to set `REDIS_PASS` to a valid value |