Files
kolla/docker/mariadb/Dockerfile.j2
Michal Nasiadka 761d587177 Move to MariaDB upstream repo and new version (10.3) on Ubuntu
MariaDB in Ubuntu packages is backlevel (10.1).
Devstack gates are tested on MySQL 5.7 which is not compatible
with MariaDB 10.1.
Neutron recently introduced a db migration
that breaks on MariaDB 10.1, but works on MariaDB 10.3 [0].

Bumping up version to 10.3 on Ubuntu to match CentOS (RDO) version.

[0]: https://review.opendev.org/#/c/677221/

Closes-Bug: #1841907
Change-Id: I16e4c40208912691e3015bfe2065ea0ce2358edb
2019-08-31 06:35:43 +00:00

73 lines
2.1 KiB
Django/Jinja

FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% block mariadb_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='mysql') }}
{% if base_package_type == 'rpm' %}
{% set mariadb_packages = [
'expect',
'galera',
'hostname',
'mariadb',
'mariadb-backup',
'mariadb-server-galera',
'mariadb-server-utils',
'pv',
'rsync',
'tar'
] %}
{% elif base_package_type == 'deb' %}
{% set mariadb_packages = [
'expect'
] %}
{% if base_distro == 'debian' %}
{% set mariadb_packages = mariadb_packages + [
'mariadb-server'
] %}
{% else %}
{% set mariadb_packages = mariadb_packages + [
'mariadb-server',
'mariadb-client',
'mariadb-backup',
] %}
{% endif %}
{% endif %}
{{ macros.install_packages(mariadb_packages | customizable("packages")) }}
COPY mariadb_sudoers /etc/sudoers.d/kolla_mariadb_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
COPY security_reset.expect /usr/local/bin/kolla_security_reset
RUN chmod 755 /usr/local/bin/kolla_extend_start \
&& chmod 755 /usr/local/bin/kolla_security_reset \
&& chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_mariadb_sudoers \
&& rm -rf /var/lib/mysql/*
{% if base_package_type == 'deb' %}
RUN mkdir -p /var/run/mysqld && chown mysql /var/run/mysqld && chmod 755 /var/run/mysqld
{% endif %}
{% if use_dumb_init %}
{% block mariadb_entrypoint %}
# NOTE(mgoddard): Override the dumb-init arguments to avoid passing
# --single-child. This does not play well with mysqld_safe, which ignores
# SIGTERM, meaning Docker needs to forcibly kill the container to stop it.
# Without --single-child, the TERM signal is sent to all subprocesses,
# including mysqld.
ENTRYPOINT ["dumb-init", "--"]
CMD ["kolla_start"]
{% endblock %}
{% endif %}
{% block mariadb_footer %}{% endblock %}
{% block footer %}{% endblock %}
USER mysql