ikawaha / kagome

Self-contained Japanese Morphological Analyzer written in pure Go
MIT License
804 stars 53 forks source link

[GitHub Actions] Docker build failed #298

Closed ikawaha closed 1 year ago

ikawaha commented 1 year ago

https://github.com/ikawaha/kagome/actions/runs/4335647896/jobs/7570442414

Pull back the image failed:

Run docker system prune -f -a && \
  docker system prune -f -a && \
  docker pull ***/kagome:arm32v6 && \
  docker pull ***/kagome:arm32v7 && \
  docker pull ***/kagome:arm64 && \
  docker pull ***/kagome:amd64
  shell: /usr/bin/bash -e {0}
  env:
    NAME_IMAGE: ***/kagome
Total reclaimed space: 0B
no matching manifest for linux/amd64 in the manifest list entries
arm32v6: Pulling from ***/kagome
Error: Process completed with exit code 1.

ikawaha_kagome_general___Docker_Hub

KEINOS commented 1 year ago

I'm not sure yet but it seems that "something happened" to the pushed image in DockerHub side during release flow.

Because the local build before push to DockerHub seems success. But failed on pulling back the pushed image.

Can you re-run the failed job in the "release" workflow? If not, we should add a "workflow_dispatch:" in the workflow YAML.

Though, I have a feeling that qemu or buildx had made a change for the cause. I will report as soon as I found something.

ikawaha commented 1 year ago

Thanks for your comment.

I retried the failed workflow with the same result. I also tried adding workflow_dispatch and running it manually, which also failed. ๐Ÿค”

KEINOS commented 1 year ago

Hmmm ... ๐Ÿค”

I wonder why is the latest image tag not updated since 3 months. Maybe the manifest error is related to this.

ใ‚นใ‚ฏใƒชใƒผใƒณใ‚ทใƒงใƒƒใƒˆ 2023-03-07 3 09 52
KEINOS commented 1 year ago

I finally found out the reason.

We were using an old method to tweak around to support Docker images for 32 bit ARM architectures. Such as ARM v6l and v7l. The old Docker did support ARM v6 but not ARM v6l, such as RaspberryPi Zero, so we needed a tweak.

But now we do not need any tweak and can be done via goreleaser.

Before PR, I made an example repo as a proof of concept.

ikawaha commented 1 year ago

@KEINOS Thank you for your research! I will try to set it up.

KEINOS commented 1 year ago

@ikawaha If you haven't taken care of it yet, I'd like to send you a PR if you don't mind.

KEINOS commented 1 year ago

I opened a draft PR @ https://github.com/ikawaha/kagome/pull/301

I haven't pushed much yet. But if you have already done something plz feel free to point that out!

ikawaha commented 1 year ago

@KEINOS Thank you so much! I haven't been able to start yet, so thank you in advance.

ikawaha commented 1 year ago

๐Ÿ™Œ https://hub.docker.com/repository/docker/ikawaha/kagome/general ikawaha_kagome_general___Docker_Hub

KEINOS commented 1 year ago

I confirm that the latest image (ikawaha/kagome:latest) worked in all the below 3 architectures. :tada:

  1. MacBookPro (macOS, Intel)
  2. Raspberry Pi ZeroW (Raspbian, Arm32 v6)
  3. NanoPi Neo2 (Armbian, Arm64)
Details - MacBookPro (macOS, Intel) ```shellsession $ sw_vers ProductName: macOS ProductVersion: 12.6.5 BuildVersion: 21G531 $ docker --version Docker version 23.0.5, build bc4487a $ docker pull ikawaha/kagome:latest latest: Pulling from ikawaha/kagome fa43deb7349f: Pull complete Digest: sha256:715c531a3254702c94b366c1a488ddfd80fdc53aa33301b5da5859f8f6910e48 Status: Downloaded newer image for ikawaha/kagome:latest docker.io/ikawaha/kagome:latest $ docker run --rm ikawaha/kagome:latest version 2.9.3 ipa v1.0.10 uni v1.1.9 $ docker run --rm -it ikawaha/kagome:latest ใ™ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใฎใ†ใก ใ™ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ™ใ‚‚ใ‚‚,ใ‚นใƒขใƒข,ใ‚นใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใฎ ๅŠฉ่ฉž,้€ฃไฝ“ๅŒ–,*,*,*,*,ใฎ,ใƒŽ,ใƒŽ ใ†ใก ๅ่ฉž,้ž่‡ช็ซ‹,ๅ‰ฏ่ฉžๅฏ่ƒฝ,*,*,*,ใ†ใก,ใ‚ฆใƒ,ใ‚ฆใƒ EOS ^C ``` - Raspberry Pi ZeroW (Raspbian, Arm v6) ```shellsession $ uname -a Linux rpi-zero 5.10.103+ #1529 Tue Mar 8 12:19:18 GMT 2022 armv6l GNU/Linux $ cat /etc/os-release | grep PRETTY_NAME PRETTY_NAME="Raspbian GNU/Linux 10 (buster)" $ docker --version Docker version 23.0.1, build a5ee5b1 $ docker pull ikawaha/kagome:latest latest: Pulling from ikawaha/kagome 34202e257f9b: Pull complete Digest: sha256:715c531a3254702c94b366c1a488ddfd80fdc53aa33301b5da5859f8f6910e48 Status: Downloaded newer image for ikawaha/kagome:latest docker.io/ikawaha/kagome:latest $ docker run --rm ikawaha/kagome:latest version 2.9.3 ipa v1.0.10 uni v1.1.9 $ docker run --rm -it ikawaha/kagome:latest ใ™ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใฎใ†ใก ใ™ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ™ใ‚‚ใ‚‚,ใ‚นใƒขใƒข,ใ‚นใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใฎ ๅŠฉ่ฉž,้€ฃไฝ“ๅŒ–,*,*,*,*,ใฎ,ใƒŽ,ใƒŽ ใ†ใก ๅ่ฉž,้ž่‡ช็ซ‹,ๅ‰ฏ่ฉžๅฏ่ƒฝ,*,*,*,ใ†ใก,ใ‚ฆใƒ,ใ‚ฆใƒ EOS ^C ``` - NanoPi Neo2 (Armbian, Arm64) ```shellsession $ uname -a Linux npi-neo2 5.15.93-sunxi64 #23.02.2 SMP Fri Feb 17 23:48:38 UTC 2023 aarch64 GNU/Linux $ cat /etc/os-release | grep PRETTY_NAME PRETTY_NAME="Debian GNU/Linux 11 (bullseye)" $ docker --version Docker version 23.0.6, build ef23cbc $ docker pull ikawaha/kagome:latest latest: Pulling from ikawaha/kagome 107960afd562: Pull complete Digest: sha256:715c531a3254702c94b366c1a488ddfd80fdc53aa33301b5da5859f8f6910e48 Status: Downloaded newer image for ikawaha/kagome:latest docker.io/ikawaha/kagome:latest $ docker run --rm ikawaha/kagome:latest version 2.9.3 ipa v1.0.10 uni v1.1.9 $ docker run --rm -it ikawaha/kagome:latest ใ™ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใ‚‚ใฎใ†ใก ใ™ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ™ใ‚‚ใ‚‚,ใ‚นใƒขใƒข,ใ‚นใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใ‚‚ ๅŠฉ่ฉž,ไฟ‚ๅŠฉ่ฉž,*,*,*,*,ใ‚‚,ใƒข,ใƒข ใ‚‚ใ‚‚ ๅ่ฉž,ไธ€่ˆฌ,*,*,*,*,ใ‚‚ใ‚‚,ใƒขใƒข,ใƒขใƒข ใฎ ๅŠฉ่ฉž,้€ฃไฝ“ๅŒ–,*,*,*,*,ใฎ,ใƒŽ,ใƒŽ ใ†ใก ๅ่ฉž,้ž่‡ช็ซ‹,ๅ‰ฏ่ฉžๅฏ่ƒฝ,*,*,*,ใ†ใก,ใ‚ฆใƒ,ใ‚ฆใƒ EOS ^C ```