Giter Site home page Giter Site logo

docker-mariadb's Introduction

Outrigger MariaDB

MariaDB docker container with easy configuration via environment variables.

Supported tags and respective Dockerfile links

This mariadb image is a MySQL compliant database image with configuration through a collection of environment variables detailed below.

For more documentation on how Outrigger images are constructed and how to work with them, please see the documentation.

How to use this image

Starting a MariaDB instance:

docker run --name some-mariadb -e MYSQL_PASS=my-secret-pw -d phase2/mariadb

... where some-mariadb is the name you want to assign to your container and my-secret-pw is the password to be set for the MySQL root user

Customizing Database Behavior

The MariaDB startup configuration is specified in the file /etc/mysql/my.cnf, and that file in turn includes any files found in the /etc/mysql/my.cnf.d directory that end with .cnf. Settings in files in this directory will augment and/or override settings in /etc/mysql/my.cnf.

If you want to use a customized MySQL configuration, you can create your alternative configuration file in a directory on the host machine and then mount that directory location as /etc/mysql/my.cnf.d inside the mariadb container.

If /my/custom/config-file.cnf is the path and name of your custom configuration file, you can start your mariadb container like this note that only the directory path of the custom config file is used in this command):

docker run --name some-mariadb -v /my/custom:/etc/mysql/my.cnf.d -e MYSQL_PASS=my-secret-pw -d outrigger/mariadb

This will start a new container some-mariadb where the MariaDB instance uses the combined startup settings from /etc/mysql/my.cnf and /etc/mysql/conf.d/config-file.cnf, with settings from the latter taking precedence.

If you add custom configuration in this way, you may invalidate the environment variables as source of database configuration.

Environment Variables

Outrigger images use Environment Variables and confd to "templatize" a number of Docker environment configurations. These templates are processed on startup with environment variables passed in via the docker run command-line or via your docker-compose manifest file. Here are the "tunable" configurations offered by this image.

  • MYSQL_PASS: [admin] This will be the password that is set for the user named admin. The root user does not have a password and allow local connections only.
  • MYSQL_DATABASE: [e.g., app_db] If set, a database with this name will be created when the database first starts up. This is not set by default.
  • MYSQL_EXPIRE_LOGS_DAYS: [10]
  • MYSQL_MAX_ALLOWED_PACKET: [16M]
  • MYSQL_MAX_CONNECTIONS: [10]
  • MYSQL_QUERY_CACHE_LIMIT: [1M]
  • MYSQL_QUERY_CACHE_SIZE: [16M]
  • MYSQL_SLOW_QUERY_LOG: [0] By default the slow query log is disabled.
  • MYSQL_LONG_QUERY_TIME: [10] Long query threshold time in seconds.
  • MYSQL_LOG_QUERY_NO_INDEX: [0] By default do not log queries that do not use an index.

Security Reports

Please email outrigger@phase2technology with security concerns.

Maintainers

Phase2 Logo

docker-mariadb's People

Contributors

febbraro avatar jdispirito avatar smerrill avatar ztidwell avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-mariadb's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.