The following guide will help you deploy the Minimus MariaDB image with self-signed, locally issued certificates to help you get started. Run the code to try it for yourself.Documentation Index
Fetch the complete documentation index at: https://docs.minimus.io/llms.txt
Use this file to discover all available pages before exploring further.
For production purposes, we recommend using publicly trusted certificates issued by a Certificate Authority (CA).
Components
- MariaDB image built by Minimus: MariaDB container configured with the secure configuration for client authentication.
- Dynamic certificate generation via OpenSSL:
- certgen.sh script: Shell script that generates a custom CA, server, and client certificates using OpenSSL.
- minidebug image: A Minimus dev toolkit that provides a shell, OpenSSL, and other utilities used to generate the certificates.
What this guide demonstrates
- TLS handshake validation
- Server/client certificate trust
- Basic auth and MariaDB operations
- Image compatibility
Directory Structure
Deploy MariaDB with TLS certificates
Prerequisite: Authenticate to the Minimus Registry
Run the docker login command to authenticate to the Minimus registry:Step 1: Generate TLS certificates
Save script that generates TLS certificates
Save the following script to a file named
certgen.sh. The script is used to generate the TLS certificates and store them in a certs folder on the host.certgen.sh
Save Docker Compose configuration
Save the following YAML file to run with Docker Compose. It uses the Minimus minidebug image to generate the certificates with the
certgen.sh shell script. Minidebug is a Minimus dev toolkit that provides a shell, OpenSSL, and other utilities. The certificates will be persisted in the certs volume on the host.create-certs.yml
- CA certificate (
ca.pem) - Server certificates (
server-cert.pem,server-key.pem) - Client certificates for
testuser(client-cert.pem,client-key.pem,client.csr)
644 and owned by UID 1000. Certificate permissions are adjusted to support non-root containers. In the next steps, you will mount these certificates into the MariaDB container.
Step 2: Deploy MariaDB server
Save Docker Compose script
Save the following Docker Compose script to a file named
docker-compose.yml. This script sets up the MariaDB service with a healthcheck, mounts a volume with the certificates, and maps port 3307 on the host to port 3306 on the container.docker-compose.yml
Step 3: Test your MariaDB server
Connect to your database to test its connectivity. First, make sure you are in the right folder, where the certs are available:-
Connect to the db:
-
Create and list databases:
-
Show server version:
-
Check that TLS is active: