Re-Structured Documentation
This commit is contained in:
75
Servers/Containerization/Docker/Compose/Homebox.md
Normal file
75
Servers/Containerization/Docker/Compose/Homebox.md
Normal file
@ -0,0 +1,75 @@
|
||||
**Purpose**: Homebox is the inventory and organization system built for the Home User! With a focus on simplicity and ease of use, Homebox is the perfect solution for your home inventory, organization, and management needs.
|
||||
|
||||
[Reference Documentation](https://hay-kot.github.io/homebox/quick-start/)
|
||||
|
||||
!!! warning "Protect with Keycloak"
|
||||
The GitHub project for this software appears to have been archived in a read-only state in June 2024. There is no default admin credential, so setting the environment variable `HBOX_OPTIONS_ALLOW_REGISTRATION` to `false` will literally make you unable to log into the system. You also cannot change it after-the-fact, so you cannot just register an account then disable it and restart the container, it doesn't work that way.
|
||||
|
||||
Due to this behavior, it is imperative that you deploy this either only internally, or if its external, put it behind something like [Authentik](https://docs.bunny-lab.io/Docker %26 Kubernetes/Docker/Docker Compose/Authentik/) or [Keycloak](https://docs.bunny-lab.io/Docker%20%26%20Kubernetes/Docker/Docker%20Compose/Keycloak/).
|
||||
|
||||
## Docker Configuration
|
||||
```jsx title="docker-compose.yml"
|
||||
version: "3.4"
|
||||
|
||||
services:
|
||||
homebox:
|
||||
image: ghcr.io/hay-kot/homebox:latest
|
||||
container_name: homebox
|
||||
restart: always
|
||||
environment:
|
||||
- HBOX_LOG_LEVEL=info
|
||||
- HBOX_LOG_FORMAT=text
|
||||
- HBOX_WEB_MAX_UPLOAD_SIZE=10
|
||||
- HBOX_MODE=production
|
||||
- HBOX_OPTIONS_ALLOW_REGISTRATION=true
|
||||
- HBOX_WEB_MAX_UPLOAD_SIZE=50
|
||||
- HBOX_WEB_READ_TIMEOUT=20
|
||||
- HBOX_WEB_WRITE_TIMEOUT=20
|
||||
- HBOX_WEB_IDLE_TIMEOUT=60
|
||||
- HBOX_MAILER_HOST=${HBOX_MAILER_HOST}
|
||||
- HBOX_MAILER_PORT=${HBOX_MAILER_PORT}
|
||||
- HBOX_MAILER_USERNAME=${HBOX_MAILER_USERNAME}
|
||||
- HBOX_MAILER_PASSWORD=${HBOX_MAILER_PASSWORD}
|
||||
- HBOX_MAILER_FROM=${HBOX_MAILER_FROM}
|
||||
volumes:
|
||||
- /srv/containers/homebox:/data/
|
||||
ports:
|
||||
- 7745:7745
|
||||
networks:
|
||||
docker_network:
|
||||
ipv4_address: 192.168.5.25
|
||||
networks:
|
||||
docker_network:
|
||||
external: true
|
||||
```
|
||||
|
||||
```jsx title=".env"
|
||||
HBOX_MAILER_HOST=mail.bunny-lab.io
|
||||
HBOX_MAILER_PORT=587
|
||||
HBOX_MAILER_USERNAME=noreply@bunny-lab.io
|
||||
HBOX_MAILER_PASSWORD=REDACTED
|
||||
HBOX_MAILER_FROM=noreply@bunny-lab.io
|
||||
```
|
||||
|
||||
## Traefik Reverse Proxy Configuration
|
||||
If the container does not run on the same host as Traefik, you will need to manually add configuration to Traefik's dynamic config file, outlined below.
|
||||
``` yaml
|
||||
http:
|
||||
routers:
|
||||
homebox:
|
||||
entryPoints:
|
||||
- websecure
|
||||
tls:
|
||||
certResolver: letsencrypt
|
||||
http2:
|
||||
service: homebox
|
||||
rule: Host(`box.bunny-lab.io`)
|
||||
middlewares:
|
||||
- "auth-bunny-lab-io" # Referencing the Keycloak Server
|
||||
services:
|
||||
homebox:
|
||||
loadBalancer:
|
||||
servers:
|
||||
- url: http://192.168.5.25:7745
|
||||
passHostHeader: true
|
||||
```
|
Reference in New Issue
Block a user