docker-library / mysql

Docker Official Image packaging for MySQL Community Server
https://dev.mysql.com/
GNU General Public License v2.0
2.47k stars 2.2k forks source link

support arm64 architecture #318

Closed longquan7 closed 2 years ago

longquan7 commented 7 years ago

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.

ethyaan commented 3 years ago

And now I hit this problem on my Apple M1 chip laptop. Seriously any further plan to make this work?

jmcollin78 commented 3 years ago

@hiroshi when I try your recommandation, I always fall into this error:

runtime: failed to create new OS thread (have 2 already; errno=22)
fatal error: newosproc

runtime stack:
runtime.throw(0x524da0, 0x9)
    /usr/local/go/src/runtime/panic.go:527 +0x90
runtime.newosproc(0xc820028000, 0xc820037fc0)
    /usr/local/go/src/runtime/os1_linux.go:150 +0x1ab
runtime.newm(0x555ce8, 0x0)
    /usr/local/go/src/runtime/proc1.go:1105 +0x130
runtime.main.func1()
    /usr/local/go/src/runtime/proc.go:48 +0x2c
runtime.systemstack(0x5c4300)
    /usr/local/go/src/runtime/asm_amd64.s:262 +0x79
runtime.mstart()
    /usr/local/go/src/runtime/proc1.go:674

goroutine 1 [running]:
runtime.systemstack_switch()
    /usr/local/go/src/runtime/asm_amd64.s:216 fp=0xc820022770 sp=0xc820022768
runtime.main()
    /usr/local/go/src/runtime/proc.go:49 +0x62 fp=0xc8200227c0 sp=0xc820022770
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1696 +0x1 fp=0xc8200227c8 sp=0xc8200227c0

My MySQL docker commands are the following:

$ docker pull --platform linux/amd64 mysql:5.7.26
...
Status: Downloaded newer image for mysql:5.7.26
docker.io/library/mysql:5.7.26
$  docker run --platform linux/amd64 --name MySQL -p 3306:3306 mysql:5.7.26
runtime: failed to create new OS thread (have 2 already; errno=22)
fatal error: newosproc

runtime stack:
runtime.throw(0x524da0, 0x9)
    /usr/local/go/src/runtime/panic.go:527 +0x90
runtime.newosproc(0xc820028000, 0xc820037fc0)
    /usr/local/go/src/runtime/os1_linux.go:150 +0x1ab
runtime.newm(0x555ce8, 0x0)
    /usr/local/go/src/runtime/proc1.go:1105 +0x130
runtime.main.func1()
    /usr/local/go/src/runtime/proc.go:48 +0x2c
runtime.systemstack(0x5c4300)
    /usr/local/go/src/runtime/asm_amd64.s:262 +0x79
runtime.mstart()
    /usr/local/go/src/runtime/proc1.go:674

goroutine 1 [running]:
runtime.systemstack_switch()
    /usr/local/go/src/runtime/asm_amd64.s:216 fp=0xc820022770 sp=0xc820022768
runtime.main()
    /usr/local/go/src/runtime/proc.go:49 +0x62 fp=0xc8200227c0 sp=0xc820022770
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1696 +0x1 fp=0xc8200227c8 sp=0xc8200227c0

Do I miss something ?

I'm on MacOS Big Sure on Mac mini M1.

 $ uname -a
Darwin mac-mini.home 20.3.0 Darwin Kernel Version 20.3.0: Thu Jan 21 00:06:51 PST 2021; root:xnu-7195.81.3~1/RELEASE_ARM64_T8101 x86_64
gtothill commented 3 years ago

Hi all, Forgive me if Ive missed something here. I'm running the alpha Rasbian (Raspberry OS) Buster arm64 build on a raspberry Pi 4. Id like to run xwiki on it and move it off my server in an effort to reduce noise - it sounds like an aircraft taking off with its cooling fans!). I'm running docker and mysql/mysql-server:8.0.25-1.2.3-server arm64/v8 in a container. It works fine (https://hub.docker.com/r/mysql/mysql-server/tags?page=1&ordering=last_updated). I know that there are lots of postgres images available (https://hub.docker.com/r/arm64v8/xwiki/tags?page=1&ordering=last_updated) but as has been pointed out, no images for mysql. Id like to be able to use mysql for consistency and because Im hosting other databases in that container so it seems sensible. I may have missed the point but given there is a build of mysql that seems to work fine on Rasbian arm64.v8, is there any difficulty in producing that image? Would it be a matter of using one of the postgres images and simply point it at a mysql database? Any help or guidance would be most appreciated.

Thanks,

Geoff.

gtothill commented 3 years ago

So sorry - I posted this comment in the wrong repo. Should have been in the xwiki repo. Please ignore - I understand the puzzled emoji now tianon. Cheers.

rfay commented 3 years ago

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 commented 3 years ago

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 commented 2 years ago

I solved this problem by using image: mysql:8.0.26 and platform: linux/x86_64 in my M1 (ARM64)

dbwodlf3 commented 2 years ago

AWS t4 instances architecture is aarch64 but mysql:5.6 doesn't support aarch64...

emilioSp commented 2 years ago

Supporting arm64 would be very appreciated

adminy commented 2 years ago

booo, this should have support! still an issue.

andytson commented 2 years ago

booo, this should have support! still an issue.

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

adminy commented 2 years ago

Then why mysql:latest isn't working?

andytson commented 2 years ago

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