Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ if [ "$BUILD_TESTS" == 1 ] ; then
echo "Found MySQL 5.6+ installation in $VT_MYSQL_ROOT."
;;

"MariaDB")
"MariaDB" | "MariaDB103" )
myversion="$("$VT_MYSQL_ROOT/bin/mysql" --version)"
[[ "$myversion" =~ MariaDB ]] || fail "Couldn't find MariaDB in $VT_MYSQL_ROOT. Set VT_MYSQL_ROOT to override search location."
echo "Found MariaDB installation in $VT_MYSQL_ROOT."
Expand Down
12 changes: 6 additions & 6 deletions docker/bootstrap/Dockerfile.mariadb103
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
FROM vitess/bootstrap:common

# Install MariaDB 10.
RUN apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8 &&\
add-apt-repository 'deb [arch=amd64] http://ftp.osuosl.org/pub/mariadb/repo/10.3/debian stretch main'
apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
mariadb-server \
libmariadbclient-dev \
# Install MariaDB 10.3
RUN apt-key adv --no-tty --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8 \
&& add-apt-repository 'deb [arch=amd64] http://ftp.osuosl.org/pub/mariadb/repo/10.3/debian stretch main' \
&& apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
mariadb-server \
libmariadbclient-dev \
&& rm -rf /var/lib/apt/lists/*

# Bootstrap Vitess
Expand Down
3 changes: 2 additions & 1 deletion docker/bootstrap/Dockerfile.percona57
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ RUN for i in $(seq 1 10); do apt-key adv --no-tty --keyserver keys.gnupg.net --r
} | debconf-set-selections && \
apt-get update && \
apt-get install -y --no-install-recommends \
percona-server-server-5.7 libperconaserverclient18.1-dev && \
percona-server-server-5.7 \
libperconaserverclient18.1-dev && \
rm -rf /var/lib/apt/lists/*

# Bootstrap Vitess
Expand Down
5 changes: 3 additions & 2 deletions docker/bootstrap/Dockerfile.percona80
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
FROM vitess/bootstrap:common

# Install Percona 8.0
RUN for i in $(seq 1 10); do apt-key adv --no-tty --keyserver keys.gnupg.net --recv-keys 9334A25F8507EFA5 && break; done &&
RUN for i in $(seq 1 10); do apt-key adv --no-tty --keyserver keys.gnupg.net --recv-keys 9334A25F8507EFA5 && break; done \
&& echo 'deb http://repo.percona.com/ps-80/apt stretch main' > /etc/apt/sources.list.d/percona.list && \
{ \
echo debconf debconf/frontend select Noninteractive; \
Expand All @@ -14,7 +14,8 @@ RUN for i in $(seq 1 10); do apt-key adv --no-tty --keyserver keys.gnupg.net --r
libperconaserverclient21 \
percona-server-tokudb \
percona-server-rocksdb \
bzip2
bzip2 \
&& rm -rf /var/lib/apt/lists/*

# Bootstrap Vitess
WORKDIR /vt/src/vitess.io/vitess
Expand Down
40 changes: 29 additions & 11 deletions docker/lite/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,17 +1,37 @@
# This image is only meant to be built from within the build.sh script.
FROM debian:jessie
FROM vitess/base AS builder
FROM debian:stretch-slim AS staging

RUN mkdir -p /vt/vtdataroot/ \
&& mkdir -p /vt/bin \
&& mkdir -p /vt/src/vitess.io/vitess/web/vtctld2 \
&& groupadd -r vitess && useradd -r -g vitess vitess

COPY --from=builder /vt/src/vitess.io/vitess/web/vtctld /vt/src/vitess.io/vitess/web/vtctld
COPY --from=builder /vt/src/vitess.io/vitess/web/vtctld2/app /vt/src/vitess.io/vitess/web/vtctld2/app
COPY --from=builder /vt/src/vitess.io/vitess/config /vt/config
COPY --from=builder /vt/bin/mysqlctld /vt/bin/
COPY --from=builder /vt/bin/vtctld /vt/bin/
COPY --from=builder /vt/bin/vtctlclient /vt/bin/
COPY --from=builder /vt/bin/vtgate /vt/bin/
COPY --from=builder /vt/bin/vttablet /vt/bin/
COPY --from=builder /vt/bin/vtworker /vt/bin/

RUN chown -R vitess:vitess /vt

FROM debian:stretch-slim

# Install dependencies
RUN apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5072E1F5 \
&& echo 'deb http://repo.mysql.com/apt/debian/ jessie mysql-5.7' > /etc/apt/sources.list.d/mysql.list \
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends gnupg dirmngr ca-certificates && apt-key adv --no-tty --recv-keys --keyserver keyserver.ubuntu.com 8C718D3B5072E1F5 \
&& echo 'deb http://repo.mysql.com/apt/debian/ stretch mysql-5.7' > /etc/apt/sources.list.d/mysql.list \
&& apt-get update \
&& DEBIAN_FRONTEND=noninteractive \
apt-get install -y --no-install-recommends \
bzip2 \
libmysqlclient18 \
libmysqlclient20 \
mysql-client \
mysql-server \
&& rm -rf /var/lib/apt/lists/*
&& rm -rf /var/lib/apt/lists/* \
&& groupadd -r vitess && useradd -r -g vitess vitess

# Set up Vitess environment (just enough to run pre-built Go binaries)
ENV VTTOP /vt/src/vitess.io/vitess
Expand All @@ -23,13 +43,11 @@ ENV GOPATH $VTROOT
ENV PATH $VTROOT/bin:$PATH
ENV VT_MYSQL_ROOT /usr
ENV PKG_CONFIG_PATH $VTROOT/lib
ENV MYSQL_FLAVOR MySQL56

# Copy binaries (placed by build.sh)
COPY lite/vt /vt

# Create vitess user
RUN groupadd -r vitess && useradd -r -g vitess vitess && \
mkdir -p /vt/vtdataroot && chown -R vitess:vitess /vt
COPY --from=staging /vt/ /vt/

# Create mount point for actual data (e.g. MySQL data dir)
VOLUME /vt/vtdataroot
USER vitess