MariaDB Enterprise Docker Registry for MariaDB Enterprise Server
MariaDB Corporation provides the MariaDB Enterprise Docker Registry. The MariaDB Enterprise Docker Registry provides Docker images for MariaDB Enterprise Server.
This page contains reference material for the MariaDB Enterprise Docker Registry.
The reference material on this page applies to MariaDB Enterprise Server 10.6 and later.
Details
Docker is an open platform for developing, shipping, and running applications that allows you to separate your applications from your infrastructure.
MariaDB Corporation provides the MariaDB Enterprise Docker Registry. The MariaDB Enterprise Docker Registry provides Docker images for MariaDB Enterprise Server.
For examples that show how to use the Docker images in the MariaDB Enterprise Docker Registry for MariaDB Enterprise Server, see Examples.
Other details are listed in the sections below.
Versions
The MariaDB Enterprise Docker Registry provides Docker images for MariaDB Enterprise Server 10.6 and later.
Storage Engines
The Docker images for MariaDB Enterprise Server include all storage engines that are installed with MariaDB Enterprise Server by default. The following storage engines are currently included:
You can check which storage engines are installed by connecting to the Docker container and executing the SHOW ENGINES statement.
Plugins
The Docker images for MariaDB Enterprise Server include all plugins that are installed with MariaDB Enterprise Server by default.
You can check which plugins are installed by connecting to the Docker container and executing the SHOW PLUGINS statement.
The container contains shared libraries for additional plugins that can be installed with the INSTALL SONAME statement or the --plugin-load-add command-line option. You can check which plugins are available by querying the information_schema.ALL_PLUGINS table:
Repositories
The MariaDB Enterprise Docker Registry contains a single repository, which provides images for MariaDB Enterprise Server:
enterprise-server
Tags
The enterprise-server repository in the MariaDB Enterprise Docker Registry contains images for different MariaDB Enterprise Server releases using specific tags:
Latest release series
latest
This tag refers to the most recent image for the latest MariaDB Enterprise Server release series, which is currently MariaDB Enterprise Server 11.8.
Specific release series
11.811.410.6
These tags refer to the images for the most recent minor release of each specific MariaDB Enterprise Server release series.
Specific minor release
11.8.3-111.4.8-510.6.23-19
These tags refer to images for specific MariaDB Enterprise Server minor releases. The listed tags are examples of minor releases. For a full list of minor releases, see MariaDB Enterprise Server All Releases.
Examples
Connect to Container with Docker Bridge Networking
To connect to a Docker container that uses Docker bridge networking, execute MariaDB Client on the container using docker exec:
To confirm the client is connected to the Docker container and the container is using the correct version of MariaDB Enterprise Server, query the version system variable with the SHOW GLOBAL VARIABLES statement:
To exit the container, use exit:
The example above shows how to connect to a Docker container using MariaDB Client on the container, but you can also connect using MariaDB Client on the host using TCP/IP. You can inspect the Docker container to find the container's IP address and TCP port bindings.
Connect to Container with Host Networking
To connect to a Docker container that uses host networking, execute MariaDB Client on the host node and specify the host's IP address and the container's port:
To confirm the client is connected to the Docker container and the container is using the correct version of MariaDB Enterprise Server, query the version system variable with the SHOW GLOBAL VARIABLES statement:
To exit the container, use exit:
Create a Container with Docker Bridge Networking
By default, Docker containers use Docker bridge networking. To make connecting to the container easier, Docker can use port bindings to publish the container's TCP ports to the host.
To create a Docker container using Docker bridge networking, execute docker run:
Configure the container using environment variables by setting the
--envcommand-line option.Configure TCP port bindings for the container by setting the
--publishor--publish-allcommand-line options.Configure MariaDB Enterprise Server by setting mariadbd command-line options.
To confirm the Docker container is running, execute docker ps:
Create a Container with Host Networking
A Docker container can be configured to use the host operating system's network.
To create a Docker container using host networking, execute docker run and specify the --network host option:
Configure the container using environment variables by setting the
--envcommand-line option.Configure the port for MariaDB Enterprise Server by setting the --port command-line option.
Configure MariaDB Enterprise Server by setting mariadbd command-line options.
To confirm the Docker container is running, execute docker ps:
Environment Variables
A Docker container can be configured to perform the following tasks using environment variables:
Create a custom database
Create a custom database user account with a custom password
Initialize the timezone tables
Set the host for the
rootdatabase userSet the password for the
rootdatabase user
The following table contains details about the environment variables that are supported:
MARIADB_DATABASE
When the MARIADB_DATABASE environment variable is set to a valid database name, create the specified database if it does not already exist.
No default
Any valid database name
MARIADB_INITDB_SKIP_TZINFO
By default, the entrypoint script automatically loads the timezone data needed for the CONVERT_TZ() function. If it is not needed, any non-empty value disables timezone loading.
No default
01
MARIADB_PASSWORD
When the MARIADB_USER and MARIADB_PASSWORD environment variables are both set, create a user account with the specified user name and password.
No default
Any valid password
MARIADB_ROOT_HOST
When the MARIADB_ROOT_HOST environment variable is set to a valid hostname, the root user account will be restricted to logins from that hostname.
%
Any valid hostname
MARIADB_ROOT_PASSWORD
When the MARIADB_ROOT_PASSWORD environment variable is set to RANDOM, a random password is generated for the root user account. When the MARIADB_ROOT_PASSWORD environment variable is set to EMPTY, the root user account uses an empty password. When the MARIADB_ROOT_PASSWORD environment variable is set to a valid password, the root user account uses the specified password.
No default
RANDOMEMPTYAny valid password
MARIADB_USER
When the MARIADB_USER and MARIADB_PASSWORD environment variables are both set, create a user account with the specified user name and password.
No default
Any valid user name
To create a Docker container using environment variables, execute docker run, environment variables and specify each environment variable using the --env option:
Inspect Container
A Docker contained can be inspected to find out internal details about the container, such as the following details:
IP addresses
MAC addresses
Port bindings
To inspect all internal details about a Docker container, execute docker inspect:
To inspect a specific internal detail about a Docker container, execute docker inspect and specify a filter using the --format option. Some examples are shown below.
To inspect the container's IP address:
To inspect the container's TCP port bindings:
Log In to Docker Registry
To log in to the MariaDB Enterprise Docker Registry, execute docker login:
When prompted, enter the login details:
As the user name, enter the email address associated with your MariaDB ID.
As the password, enter your Customer Download Token.
The login details will be saved.
To confirm the login details were saved, check the ~/.docker/config.json file for a JSON object named "docker.mariadb.com" inside an "auths" parent JSON object:
Obtain a Shell in Container
To obtain a shell in the Docker container, execute the shell on the container using docker exec:
Pull Docker Image
To pull a Docker image with the appropriate tag, execute docker pull:
To confirm the Docker image has been pulled, execute docker images:
Remove Container
To remove a Docker container, execute docker rm:
To confirm the container is removed, execute docker ps:
Stop Container
To stop a Docker container, execute docker stop:
To confirm the container is stopped, execute docker ps:
View Container Logs
To view the logs in the Docker container, execute docker logs:
Last updated
Was this helpful?

