4.2 KiB
Installation
There are two main ways to run the application.
- As a Docker container.
- Using the correct executable for your platform by downloading it from the Releases.
::: info Configuration Options The application can be configured using environment variables. You can find a list of all available options in the configuration section. :::
Docker
The following instructions assume Docker is already installed on your system. See (Docker's official installation guide)
The official image is ghcr.io/sysadminsmedia/homebox:latest. For each image there are two tags, respectively the regular tag and $TAG-rootless, which uses a non-root image.
Docker Run
Great for testing out the application, but not recommended for stable use. Checkout the docker-compose below for the recommended deployment.
# If using the rootless image, ensure data
# folder has correct permissions
$ mkdir -p /path/to/data/folder
$ chown 65532:65532 -R /path/to/data/folder
# ---------------------------------------
# Run the image
$ docker run -d \
--name homebox \
--restart unless-stopped \
--publish 3100:7745 \
--env TZ=Europe/Bucharest \
--env HBOX_OPTIONS_ALLOW_ANALYTICS=false \
--volume /path/to/data/folder/:/data \
ghcr.io/sysadminsmedia/homebox:latest
# ghcr.io/sysadminsmedia/homebox:latest-rootless
Docker Compose
- Create a
docker-compose.ymlfile.
services:
homebox:
image: ghcr.io/sysadminsmedia/homebox:latest
# image: ghcr.io/sysadminsmedia/homebox:latest-rootless
container_name: homebox
restart: always
environment:
- HBOX_LOG_LEVEL=info
- HBOX_LOG_FORMAT=text
- HBOX_WEB_MAX_FILE_UPLOAD=10
# Please consider allowing analytics to help us improve Homebox (basic computer information, no personal data)
- HBOX_OPTIONS_ALLOW_ANALYTICS=false
volumes:
- homebox-data:/data/
ports:
- 3100:7745
volumes:
homebox-data:
driver: local
::: info
If you use the rootless image, and instead of using named volumes you would prefer using a hostMount directly (e.g., volumes: [ /path/to/data/folder:/data ]) you need to chown the chosen directory in advance to the 65532 user (as shown in the Docker example above).
:::
::: warning
If you have previously set up docker compose with the HBOX_WEB_READ_TIMEOUT, HBOX_WEB_WRITE_TIMEOUT, or HBOX_IDLE_TIMEOUT options, and you were previously using the hay-kot image, please note that you will have to add an s for seconds or m for minutes to the end of the integers. A dependency update removed the defaultation to seconds and it now requires an explicit duration time.
:::
- While in the same folder as docker-compose.yml, start the container by running:
docker compose up --detach
- Navigate to
http://server.local.ip.address:3100/to access the web interface. (replace with the right IP address).
You can learn more about Docker by reading the official Docker documentation.
Windows
- Download the appropriate release for your CPU architecture from the releases page on GitHub.
- Extract the archive.
- Run
homebox.exe. This will start the server on port 7745. - You can test it by accessing http://localhost:7745.
Linux
- Download the appropriate release for your CPU architecture from the releases page on GitHub.
- Extract the archive.
- Run the
homeboxexecutable. - The web interface will be accessible on port 7745 by default. Access the page by navigating to
http://server.local.ip.address:7745/(replace with the right ip address)
macOS
- Download the appropriate release for your CPU architecture from the releases page on GitHub. (Use
homebox_Darwin_x86_64.tar.gzfor Intel-based macs andhomebox_Darwin_arm64.tar.gzfor Apple Silicon) - Extract the archive.
- Run the
homeboxexecutable. - The web interface will be accessible on port 7745 by default. Access the page by navigating to
http://local.ip.address:7745/(replace with the right ip address)