d1af33f17b
* MySQL 5.7 and MySQL 8.0 need different percona-xtrabackup package version. Added Percona XtraBackup 8 support for MySQL 8.x backup and restore. * Construct different backup container image names for MySQL 5.7 and MySQL 8.0 based on the default option value. * Two docker images are uploaded for backup/restore: openstacktrove/db-backup-mysql5.7:1.0.0 and openstacktrove/db-backup-mysql8.0:1.0.0. Trove guest agent can automatically choose the approriate one based on the datastore version. * Added option "secure-file-priv=NULL" in MySQL config template to fix https://github.com/docker-library/mysql/issues/541. * Stop using IDENTIFIED BY in GRANT clause (also REVOKE). Starting with MySQL 8 creating a user implicitly using the GRANT command is not supported. Story: #2008275 Task: #41143 Change-Id: Ibdec63324b1b39ba9b8a38dbe529da17bbb06767
29 lines
1.1 KiB
Docker
29 lines
1.1 KiB
Docker
FROM ubuntu:18.04
|
|
LABEL maintainer="anlin.kong@gmail.com"
|
|
|
|
ARG DATASTORE="mysql5.7"
|
|
ARG APTOPTS="-y -qq --no-install-recommends --allow-unauthenticated"
|
|
|
|
RUN export DEBIAN_FRONTEND="noninteractive" \
|
|
&& export APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=1
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install $APTOPTS gnupg2 lsb-release apt-utils apt-transport-https ca-certificates software-properties-common curl \
|
|
&& apt-get -o Dpkg::Options::="--force-confmiss" install --reinstall netbase \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY . /opt/trove/backup
|
|
WORKDIR /opt/trove/backup
|
|
RUN ./install.sh $DATASTORE
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install $APTOPTS build-essential python3-setuptools python3-all python3-all-dev python3-pip libffi-dev libssl-dev libxml2-dev libxslt1-dev libyaml-dev \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& pip3 --no-cache-dir install -U -r requirements.txt \
|
|
&& curl -sSL https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64 -o /usr/local/bin/dumb-init \
|
|
&& chmod +x /usr/local/bin/dumb-init
|
|
|
|
ENTRYPOINT ["dumb-init", "--single-child", "--"]
|