-
-
Notifications
You must be signed in to change notification settings - Fork 54
Home
The documentation covered on this page outlines the process for deploying a container to reference and colorize selfh.st/icons via HEX color codes.
Note: The documentation below is only applicable for v2.0.0 and later.
| Name | Tag |
|---|---|
| Latest | latest |
| Release |
2.2.0, 2.2, 2
|
The following architectures are supported by this image. Docker will automatically detect the appropriate value for your machine - no special tags are required.
| Architecture |
|---|
| x86-64 |
| arm64 |
| arm/v7 |
The image is configured to reference remote icons file by default. Users who prefer to host the assets locally should consider one of the following options (not covered in detail in this documentation):
- rsync
- Cloning the repository to a local folder
- External tools like git-sync
When hosted locally, users will need to un-comment the volume mount in the docker-compose template below to grant the container access to the icon files.
services:
selfhst-icons:
image: ghcr.io/selfhst/icons:latest
container_name: selfhst-icons
restart: unless-stopped
ports:
- 4050:4050
environment:
PORT: 4050
# Set to 'remote' to use remote assets from this repo
# Set to 'local' to use local icon files (requires volume mount)
ICON_SOURCE: remote
# This variable determines which icon format to use when a custom color is not specified
# By default, this is set to 'webp' as not all icons have SVG versions
STANDARD_ICON_FORMAT: webp
# Volumes are only required if ICON_SOURCE is set to 'local'
#volumes:
# - /local/path/to/selfhst/icons/svg:/app/icons/svg:ro # Always required if ICON_SOURCE is 'local'
# - /local/path/to/selfhst/icons/png:/app/icons/png:ro # Only required if ICON_SOURCE is 'local' and STANDARD_ICON_FORMAT is 'png'
# - /local/path/to/selfhst/icons/webp:/app/icons/webp:ro # Only required if ICON_SOURCE is 'local' and STANDARD_ICON_FORMAT is 'webp'
# - /local/path/to/custom/icons:/app/icons/custom:ro # Optional mount for custom local icons| Variable | Default | Description |
|---|---|---|
PORT |
4050 |
Internal port for communicating with the container |
ICON_SOURCE |
remote |
Set local to leverage local icon files |
STANDARD_ICON_FORMAT |
webp |
Icon format used when a color code is not specified (svg, png, webp) |
While out of the scope of this guide, many applications will require users to leverage HTTPS when linking to icons served from the container.
The process to proxy the container and icons is straightforward. A sample Caddyfile configuration has been provided for reference:
icons.selfh.st { reverse_proxy selfhst-icons:4050 }
After deployment (docker compose up), icons be referenced with the following URL conventions:
| Icon | Link | Comments |
|---|---|---|
| Standard | https://example.com/bookstack |
Server will automatically select file format based on variables |
| Custom Color | https://example.com/bookstack/8803fc |
Do not include the '#' portion of the HEX color code |
| Custom Icon | https://example.com/custom/bookstack.png |
File format must be specified for custom icons |