This is a fork of the Git repo of the Docker official image for Mysql. See the Docker Hub page for the full readme on how to use this Docker image and for information regarding contributing and issues.
The goal of this fork was to build ARM (arm32v6, arm32v7, arm64v8) compliant images, as the official 'mysql' don't support such ARMS builds, which could be confirmed by running this command:
# `docker run --rm mplatform/mquery mysql`, which is an older (and lighter !) alternative to `DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect mysql
Image: mysql
* Manifest List: Yes
* Supported platforms:
- linux/amd64
While
# docker run --rm mplatform/mquery biarms/mysql:5
Image: biarms/mysql:5
* Manifest List: Yes
* Supported platforms:
- linux/arm/v6
- linux/amd64
- linux/arm64
Notices that these images are build on top of official docker images (resin/raspbian for armv6 and ubuntu for armv7 and arm64), and (try to) offer the same 'docker-entry-point' functionality as the official images (including the MYSQL_ROOT_PASSWORD_FILE useful for docker swarm).
As these docker images were created to mimic as much as possible the official mysql build, the official 'mysql' readme (available at docker-library/docs and specifically in docker-library/docs/mysql) should be fully applicable.
To pull this image from docker hub/docker cloud:
$ docker pull biarms/mysql:5 # should get a working images on any arm device from v6 to v8, but also on x86_64 server
Caution:
Image: biarms/mysql:5
* Supported platforms:
- linux/arm/v6 # => mysql version 5.5.60
- linux/amd64 # => mysql version 5.7.30
- linux/arm64 # => mysql version 5.7.30
In other words, docker run -it --rm biarms/mysql:5 --version
will return:
docker run --rm mplatform/mquery biarms/mysql:5.7.30
(as well as docker run --rm mplatform/mquery biarms/mysql:5.7
) will return something similar to:
Image: biarms/mysql:5.7.30
* Manifest List: Yes
* Supported platforms:
- linux/amd64 # => mysql version 5.7.30
- linux/arm/v7 # => mysql version 5.7.30
- linux/arm64 # => mysql version 5.7.30
Which means that docker run -it --rm biarms/mysql:5.7 --version
(or docker run -it --rm biarms/mysql:5.7.30 --version
) will return:
- linux/amd64 # => mysql version 5.5.62
- linux/arm/v6 # => mysql version 5.5.60
- linux/arm/v7 # => mysql version 5.5.60 (even if we have a better 5.5.62 image !)
- linux/arm64 # => mysql version 5.5.62
Image: biarms/mysql:5.5.62
* Manifest List: Yes
* Supported platforms:
- linux/amd64 # => mysql version 5.5.62
- linux/arm/v7 # => mysql version 5.5.62
- linux/arm64 # => mysql version 5.5.62
arm32v6 | arm32v7 | arm64v8 | amd64 | |
---|---|---|---|---|
docker run --rm biarms/mysql --version |
5.5.60 | 5.5.60 (1) | 5.7.30 | 5.7.30 |
docker run --rm biarms/mysql:5 --version |
5.5.60 | 5.5.60 (1) | 5.7.30 | 5.7.30 |
docker run --rm biarms/mysql:5.5 --version |
5.5.60 | 5.5.60 (2) | 5.5.62 | 5.5.62 |
docker run --rm biarms/mysql:5.5.62 --version |
NOK | 5.5.62 | 5.5.62 | 5.5.62 |
docker run --rm biarms/mysql:5.7 --version |
NOK | 5.7.30 | 5.7.30 | 5.7.30 |
docker run --rm biarms/mysql:5.7.30 --version |
NOK | 5.7.30 | 5.7.30 | 5.7.30 |
arm32v6 | arm32v7 | arm64v8 | amd64 | |
---|---|---|---|---|
docker run --rm biarms/mysql dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
docker run --rm biarms/mysql:5 dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
docker run --rm biarms/mysql:5.5 dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
docker run --rm biarms/mysql:5.5.62 dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
docker run --rm biarms/mysql:5.7 dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
docker run --rm biarms/mysql:5.7.30 dpkg --print-architecture |
armhf | armhf | arm64 | amd64 |
arm32v6 | arm32v7 | arm64v8 | amd64 | |
---|---|---|---|---|
docker run --rm biarms/mysql sh -c 'cat /etc/*release' |
debian 7 (a) | debian 7 (a) (1) | Ubuntu 18.04.4 | Ubuntu 18.04.4 |
docker run --rm biarms/mysql:5 sh -c 'cat /etc/*release' |
debian 7 (a) | debian 7 (a) (1) | Ubuntu 18.04.4 | Ubuntu 18.04.4 |
docker run --rm biarms/mysql:5.5 sh -c 'cat /etc/*release' |
debian 7 (a) | debian 7 (a) (2) | Ubuntu 14.04.6 | Ubuntu 14.04.6 |
docker run --rm biarms/mysql:5.5.62 sh -c 'cat /etc/*release' |
NOK | Ubuntu 14.04.6 | Ubuntu 14.04.6 | Ubuntu 14.04.6 |
docker run --rm biarms/mysql:5.7 sh -c 'cat /etc/*release' |
NOK | Ubuntu 18.04.4 | Ubuntu 18.04.4 | Ubuntu 18.04.4 |
docker run --rm biarms/mysql:5.7.30 sh -c 'cat /etc/*release' |
NOK | Ubuntu 18.04.4 | Ubuntu 18.04.4 | Ubuntu 18.04.4 |
Raspbian 7 (wheezy)
, which is a 'debian 7 like' OS (base image is 'resin/rpi-raspbian')Ubuntu 18.04.4
(build for arm32v7), but is a debian-7 like arm32v6 compatible OS because of 'docker pull' issue. See https://github.com/biarms/mysql/issues/4 for more details.Ubuntu 14.04.6
(build for arm32v7), but is a debian-7 like arm32v6 compatible OS because of 'docker pull' issue. See https://github.com/biarms/mysql/issues/4 for more details.By downloading them directly, without using the docker manifest. For instance:
docker run -it --rm biarms/mysql:5.5.62-linux-arm32v7 --version
Thanks to CircleCi client:
circleci local execute -e DOCKER_USERNAME=******** -e DOCKER_PASSWORD=********
or
DOCKER_USERNAME=******** DOCKER_PASSWORD=******** make circleci-local-build