Skip to content

Commit c5ce5cc

Browse files
authored
Merge pull request #382 from infosiftr/stretch-goals
Update 5.7, 5.6, and 5.5 to "debian:stretch-slim"
2 parents bed3b34 + f279c9c commit c5ce5cc

File tree

4 files changed

+33
-20
lines changed

4 files changed

+33
-20
lines changed

5.5/Dockerfile

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
FROM debian:jessie
1+
FROM debian:stretch-slim
22

33
# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
44
RUN groupadd -r mysql && useradd -r -g mysql mysql
55

6+
RUN apt-get update && apt-get install -y --no-install-recommends gnupg dirmngr && rm -rf /var/lib/apt/lists/*
7+
68
# add gosu for easy step-down from root
79
ENV GOSU_VERSION 1.7
810
RUN set -x \
@@ -12,22 +14,27 @@ RUN set -x \
1214
&& export GNUPGHOME="$(mktemp -d)" \
1315
&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \
1416
&& gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu \
15-
&& rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc \
17+
&& rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc \
1618
&& chmod +x /usr/local/bin/gosu \
1719
&& gosu nobody true \
1820
&& apt-get purge -y --auto-remove ca-certificates wget
1921

2022
RUN mkdir /docker-entrypoint-initdb.d
2123

24+
RUN apt-get update && apt-get install -y --no-install-recommends \
25+
# for MYSQL_RANDOM_ROOT_PASSWORD
26+
pwgen \
2227
# FATAL ERROR: please install the following Perl modules before executing /usr/local/mysql/scripts/mysql_install_db:
2328
# File::Basename
2429
# File::Copy
2530
# Sys::Hostname
2631
# Data::Dumper
27-
RUN apt-get update && apt-get install -y perl --no-install-recommends && rm -rf /var/lib/apt/lists/*
28-
32+
perl \
2933
# mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
30-
RUN apt-get update && apt-get install -y libaio1 pwgen && rm -rf /var/lib/apt/lists/*
34+
libaio1 \
35+
# mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
36+
libncurses5 \
37+
&& rm -rf /var/lib/apt/lists/*
3138

3239
ENV MYSQL_MAJOR 5.5
3340
ENV MYSQL_VERSION 5.5.59
@@ -40,7 +47,7 @@ RUN apt-get update && apt-get install -y ca-certificates wget --no-install-recom
4047
# gpg: key 5072E1F5: public key "MySQL Release Engineering <[email protected]>" imported
4148
&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5 \
4249
&& gpg --batch --verify mysql.tar.gz.asc mysql.tar.gz \
43-
&& rm -r "$GNUPGHOME" mysql.tar.gz.asc \
50+
&& rm -rf "$GNUPGHOME" mysql.tar.gz.asc \
4451
&& mkdir /usr/local/mysql \
4552
&& tar -xzf mysql.tar.gz -C /usr/local/mysql --strip-components=1 \
4653
&& rm mysql.tar.gz \

5.6/Dockerfile

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
FROM debian:jessie
1+
FROM debian:stretch-slim
22

33
# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
44
RUN groupadd -r mysql && useradd -r -g mysql mysql
55

6+
RUN apt-get update && apt-get install -y --no-install-recommends gnupg dirmngr && rm -rf /var/lib/apt/lists/*
7+
68
# add gosu for easy step-down from root
79
ENV GOSU_VERSION 1.7
810
RUN set -x \
@@ -12,33 +14,37 @@ RUN set -x \
1214
&& export GNUPGHOME="$(mktemp -d)" \
1315
&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \
1416
&& gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu \
15-
&& rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc \
17+
&& rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc \
1618
&& chmod +x /usr/local/bin/gosu \
1719
&& gosu nobody true \
1820
&& apt-get purge -y --auto-remove ca-certificates wget
1921

2022
RUN mkdir /docker-entrypoint-initdb.d
2123

24+
RUN apt-get update && apt-get install -y --no-install-recommends \
25+
# for MYSQL_RANDOM_ROOT_PASSWORD
26+
pwgen \
2227
# FATAL ERROR: please install the following Perl modules before executing /usr/local/mysql/scripts/mysql_install_db:
2328
# File::Basename
2429
# File::Copy
2530
# Sys::Hostname
2631
# Data::Dumper
27-
RUN apt-get update && apt-get install -y perl pwgen --no-install-recommends && rm -rf /var/lib/apt/lists/*
32+
perl \
33+
&& rm -rf /var/lib/apt/lists/*
2834

2935
RUN set -ex; \
3036
# gpg: key 5072E1F5: public key "MySQL Release Engineering <[email protected]>" imported
3137
key='A4A9406876FCBD3C456770C88C718D3B5072E1F5'; \
3238
export GNUPGHOME="$(mktemp -d)"; \
3339
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; \
3440
gpg --export "$key" > /etc/apt/trusted.gpg.d/mysql.gpg; \
35-
rm -r "$GNUPGHOME"; \
41+
rm -rf "$GNUPGHOME"; \
3642
apt-key list > /dev/null
3743

3844
ENV MYSQL_MAJOR 5.6
39-
ENV MYSQL_VERSION 5.6.39-1debian8
45+
ENV MYSQL_VERSION 5.6.39-1debian9
4046

41-
RUN echo "deb http://repo.mysql.com/apt/debian/ jessie mysql-${MYSQL_MAJOR}" > /etc/apt/sources.list.d/mysql.list
47+
RUN echo "deb http://repo.mysql.com/apt/debian/ stretch mysql-${MYSQL_MAJOR}" > /etc/apt/sources.list.d/mysql.list
4248

4349
# the "/var/lib/mysql" stuff here is because the mysql-server postinst doesn't have an explicit way to disable the mysql_install_db codepath besides having a database already "configured" (ie, stuff in /var/lib/mysql/mysql)
4450
# also, we set debconf keys to make APT a little quieter

5.7/Dockerfile

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1-
FROM debian:jessie
1+
FROM debian:stretch-slim
22

33
# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
44
RUN groupadd -r mysql && useradd -r -g mysql mysql
55

6+
RUN apt-get update && apt-get install -y --no-install-recommends gnupg dirmngr && rm -rf /var/lib/apt/lists/*
7+
68
# add gosu for easy step-down from root
79
ENV GOSU_VERSION 1.7
810
RUN set -x \
@@ -12,7 +14,7 @@ RUN set -x \
1214
&& export GNUPGHOME="$(mktemp -d)" \
1315
&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \
1416
&& gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu \
15-
&& rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc \
17+
&& rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc \
1618
&& chmod +x /usr/local/bin/gosu \
1719
&& gosu nobody true \
1820
&& apt-get purge -y --auto-remove ca-certificates wget
@@ -38,13 +40,13 @@ RUN set -ex; \
3840
export GNUPGHOME="$(mktemp -d)"; \
3941
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; \
4042
gpg --export "$key" > /etc/apt/trusted.gpg.d/mysql.gpg; \
41-
rm -r "$GNUPGHOME"; \
43+
rm -rf "$GNUPGHOME"; \
4244
apt-key list > /dev/null
4345

4446
ENV MYSQL_MAJOR 5.7
45-
ENV MYSQL_VERSION 5.7.21-1debian8
47+
ENV MYSQL_VERSION 5.7.21-1debian9
4648

47-
RUN echo "deb http://repo.mysql.com/apt/debian/ jessie mysql-${MYSQL_MAJOR}" > /etc/apt/sources.list.d/mysql.list
49+
RUN echo "deb http://repo.mysql.com/apt/debian/ stretch mysql-${MYSQL_MAJOR}" > /etc/apt/sources.list.d/mysql.list
4850

4951
# the "/var/lib/mysql" stuff here is because the mysql-server postinst doesn't have an explicit way to disable the mysql_install_db codepath besides having a database already "configured" (ie, stuff in /var/lib/mysql/mysql)
5052
# also, we set debconf keys to make APT a little quieter

update.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,7 @@ versions=( "${versions[@]%/}" )
1111

1212
defaultDebianVariant='stretch-slim'
1313
declare -A debianVariants=(
14-
[5.5]='jessie'
15-
[5.6]='jessie'
16-
[5.7]='jessie'
14+
#[5.5]='jessie'
1715
)
1816

1917
for version in "${versions[@]}"; do

0 commit comments

Comments
 (0)