The Big Picture#
The LinkAhead application is split into one image for the SQL server and one for the LinkAhead server itself. Both communicate with each other in a network set up by Docker Compose.
Images#
SQL: The SQL image is based on an upstream MariaDB image, additional setup of user and database schema are performed later in the build process.
LinkAhead: The LinkAhead image is based on Debian Stable. The build process adds the necessary packages and downloads and builds the LinkAhead server, including the WebUI.
Composition#
Docker Compose starts a container for each image and configures the runtime images for matching
settings. The linkahead wrapper script creates and manages the docker-compose.yml file from the
profile configuration.
Customization#
The customization mainly happens via the settings in the profile.yml and the custom directories specified therein.
Passwords: At the moment there are default passwords for access to the SQL server, but it is planned that they be replaced by random-generated password for each
docker-composeinstantiation. This should not be of utmost importance if it is possible to separate the SQL server from the rest of the host system on a network level.Permanent data: Data that is to remain beyond destruction of the containers is stored outside, linked inside the containers by volumes.