Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support arm64 architecture #318

Closed
longquan7 opened this issue Aug 16, 2017 · 63 comments · Fixed by #680
Closed

support arm64 architecture #318

longquan7 opened this issue Aug 16, 2017 · 63 comments · Fixed by #680
Labels
Request Request for image modification or feature

Comments

@longquan7
Copy link

I want to build this image on arm64 architecture but I don't find arm64 package in this file http://repo.mysql.com/apt/debian/dists/jessie/InRelease , So I want to know the image whether or not support arm64 architecture.

@yosifkit
Copy link
Member

This would need support from MySQL upstream to release packages for other architectures in their apt repo. (to me, this seems unlikely since they don't commercially support much more then i386 and amd64: https://www.mysql.com/support/supportedplatforms/database.html)

cc @ltangvald would mysql be willing to build their apt packages on more architectures? (like arm64v8, arm32v7, ppc64le, and s390x)

@gnumoksha
Copy link

@yosifkit debian has mysql server package for arm architecture. I am using it on a few Raspberry Pi.

@tianon
Copy link
Member

tianon commented Oct 25, 2017 via email

@smallfryy
Copy link

@longquan7 - did you find a solution? I'm also looking to build mySQL:5.7 image on arm64 architecture (Odroid XU3, per issue referenced above).

@longquan7
Copy link
Author

@samalba Nothing yet.This would need support from MySQL upstream to release packages.

@wglambert wglambert added the Request Request for image modification or feature label Apr 25, 2018
@geerlingguy
Copy link

Just a note for anyone who needs a working image for testing purposes (though I'd recommend building your own for prod!) for Raspberry Pi at least—I've tested the following two and can confirm they work okay on my Pi 3 B and 3 B+ with Raspbian:

Note that they only support MySQL 5.5 at this time.

@shawnguo2
Copy link

@ltangvald I'm particularly wondering about mysql's take on arm64 architecture support, considering there are a lot of push on arm64 enterprise from industry. Is there any plan already being discussed or just no, nothing on that? Thanks much.

@ltangvald
Copy link
Collaborator

We do have an experimental preview out https://blogs.oracle.com/wim/mysql-805-community-edition-preview-for-oracle-linux-7-for-arm64-preview (8.0.5 was never released, but was instead renamed to 8.0.11), but I don't really have any more concrete information than that :)

Debian stretch does not have MySQL. They just have a mysql-server package that actually points to MariaDB. Ubuntu has MySQL, but generally only a single version (5.7)

5.7 and 8.0 can also be built on raspberry pi, but I think the build needs to be tweaked since the device is short on memory.

@shawnguo2
Copy link

@ltangvald Thanks much for your input. It's very helpful for us to understand the status of MySQL on arm64. As per comments from @yosifkit and @tianon, we should only get MySQL package from MySQL upstream repo. Before MySQL releases debian package for arm64, It seems the only way for getting arm64 support in official image is to add an OL (Oracle Linux) variant for MySQL docker image? Or is there any other way around?

@ltangvald
Copy link
Collaborator

The only other option would be to build the server from scratch, on arm64, and it's unlikely to be made a part of the official image.

Regarding an OL variant, we're hoping to add them to the official image soon (this is hanging on me, as I need to make a templating system so we don't double the maintenance work by adding more images).

We do already have the OL variant upstream (mysql/mysql-server instead of just mysql), but that doesn't have an arm64 version either.

@shawnguo2
Copy link

@ltangvald Really appreciate your comments. Please let me know if the templating system is available for OL variant. I will be more than happy to help add arm64 architecture to it. Thanks!

@shawnguo2
Copy link

@ltangvald While waiting for your OL variant templating work for official image, I'm wondering if adding arm64 support to mysql/mysql-server image makes any sense. I looked into its Dockerfile and found that it's based on OL slim image and uses minimal version of mysql-community-server and mysql-shell package, which are unavailable from arm64 repo [1]. Does that mean if we want to support arm64 in this image, we will need these two packages for arm64? Or can we switch the image over to use full version of mysql-community-server that is available on both x86_64 and arm64? Maybe this is a question for @bkandasa? Thanks!

[1] http://yum.oracle.com/repo/OracleLinux/OL7/latest/aarch64/index.html

@ltangvald
Copy link
Collaborator

The currently available MySQL package for arm64 was an experimental, one-off release. We wouldn't be able to add it to the mysql/mysql-server image until it's supported for the regular releases (in which case we'll most likely have access to the same minimal-server images).

@lag-linaro
Copy link

lag-linaro commented Jul 4, 2018

Out of interest, what are the likely timescales for having ARM64 support for the regular releases?

@ltangvald, is there anything we can do to expedite the process?

@tianon
Copy link
Member

tianon commented Aug 13, 2018

@ltangvald it appears that https://repo.mysql.com/yum/mysql-8.0-community/docker/aarch64/ is looking a bit more official now 😏

Any chance that's coming to the APT builds soon, and/or that arm64v8 support for mysql/mysql-server is on the horizon? 😄 👍

@ltangvald
Copy link
Collaborator

Hi,

For the former (arm support for apt platforms), I unfortunately don't know.
For the latter, I'm actually working on it right now (I basically just need to figure out the multi-arch manifests and it will be published).
Once the changes I proposed in pr #471 have been finalized (as I mention there it might be more sensible to split it up) I was going to make another one to add rpm-based images to the official repo, for 5.7 and 8.0.

@ltangvald
Copy link
Collaborator

ltangvald commented Aug 20, 2018

We've published the upstream aarch64 image now. Since it's still somewhat experimental we used a separate tag: mysql/mysql-server:8.0-aarch64

@lag-linaro
Copy link

lag-linaro commented Aug 20, 2018

Do you have a link to the PR/URL please?

@ltangvald
Copy link
Collaborator

It's not properly added to our build pipeline yet, but the source for the arm image can be seen here: https://github.com/ltangvald/mysql-1/blob/mysql-server-arm/8.0-aarch64/Dockerfile

The only thing changed from https://github.com/mysql/mysql-docker/blob/mysql-server/8.0/Dockerfile is the rpm url, plus a required workaround noted at https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html#yum-install-platform-specifics (at line 21 and 24)

odidev added a commit to odidev/official-images that referenced this issue Aug 22, 2018
 - Architectures label added to support multi-arch.
 - ARM64v8 added for Postgres based tags only.

This is done as MySQL is still not offically supported
for ARM64v8. The ongoing issue for the same is:
docker-library/mysql#318

Signed-off-by: Odidev <odidev@puresoftware.com>
odidev added a commit to odidev/official-images that referenced this issue Aug 22, 2018
 - Architectures label added to support multi-arch.
 - ARM64v8 added for Postgres based tags only.

This is done as MySQL is still not offically supported
for ARM64v8. The ongoing issue for the same is:
docker-library/mysql#318

Signed-off-by: Odidev <odidev@puresoftware.com>
@lag-linaro
Copy link

It's been a while, so I thought I'd check in. I see that ARM64v8 is still not supported.

Have you guys moved forward in any way?

@keithy
Copy link

keithy commented Oct 23, 2018

Not sure what the big deal is, there are plenty of builds of MySQL and MariaDB out there for arm64v8. I'm using yobasystems/alpine-mariadb

In the docker-compose file I substitute:
#image: "xwiki:latest"
build: 10/mysql-tomcat

Moment of truth...

@khalwat
Copy link

khalwat commented Apr 23, 2021

Hoping for ARM support for Apple Silicon M1, etc. in the official Docker images, using mysql/mysql-server for now instead.

Thanks for all you do!

@ethyaan

This comment has been minimized.

@jmcollin78

This comment has been minimized.

@gtothill

This comment has been minimized.

@gtothill

This comment has been minimized.

@rfay
Copy link

rfay commented Oct 17, 2021

I note that Ubuntu 20.04 (arm64) has mysql-server-8.0 and Ubuntu 18.04 (arm64) has mysql-server-5.7 as supported packages. Obviously rolled by the Ubuntu team, but fully supported for arm64.

@rfay
Copy link

rfay commented Oct 17, 2021

The mysql feature request for debian/ubuntu arm64 packages is https://bugs.mysql.com/bug.php?id=103462 - maybe some "Affects me" clicks there would help.

@yanxg

This comment has been minimized.

@dbwodlf3

This comment has been minimized.

@emilioSp

This comment has been minimized.

@adminy
Copy link

adminy commented Mar 30, 2022

booo, this should have support! still an issue.

@andytson
Copy link

booo, this should have support! still an issue.

It's closed because it's done, see mysql:8.0-oracle

@adminy
Copy link

adminy commented Mar 30, 2022

Then why mysql:latest isn't working?

@andytson
Copy link

andytson commented Mar 30, 2022

See https://hub.docker.com/_/mysql, tag oracle for the equivalent to latest for this.

It's another "flavour" of the image using oraclelinux (since Oracle only supply pre-compiled arm64 binaries for oraclelinux), and since maintaining backwards compatibility (and possible future debian arm binaries), it's not altering the existing tags

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Request Request for image modification or feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.