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

"Failed to launch" on Raspberry Pi 4 (arm64) #74

Open
Zettergaard opened this issue Jan 18, 2023 · 7 comments
Open

"Failed to launch" on Raspberry Pi 4 (arm64) #74

Zettergaard opened this issue Jan 18, 2023 · 7 comments

Comments

@Zettergaard
Copy link

Getting the following output when running the docker command with the latest build version.

root@atlas:~# docker run --rm -it -v protonmail:/root shenxn/protonmail-bridge:build init
+ [[ init == init ]]
+ gpg --generate-key --batch /protonmail/gpgparams
gpg: Generating a basic OpenPGP key
gpg: key E8D639E605C8C3F9 marked as ultimately trusted
gpg: revocation certificate stored as '/root/.gnupg/openpgp-revocs.d/B2D0D63D72BEC9E89AFDE13CE8D639E605C8C3F9.rev'
gpg: done
+ pass init pass-key
Password store initialized for pass-key
+ pkill protonmail-bridge
+ true
+ /protonmail/proton-bridge --cli init
INFO[Jan 18 08:36:31.541] No more updates found, looking up bridge executable  error="no available newer versions" exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /protonmail/bridge)
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /protonmail/bridge)
FATA[Jan 18 08:36:31.546] Failed to launch                              error="exit status 1" exe_path=/protonmail/bridge exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git

Running with version 2.4.0-build, works though.

Operating system:

root@atlas:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 11 (bullseye)
Release:        11
Codename:       bullseye

Anything I am missing?

Cheers

@IngwiePhoenix
Copy link

Same here on a Rockchip SOC:

root@FriendlyWrt /s/s/proton-bridge# docker-compose run bridge init
[+] Running 1/0
 ⠿ Network proton-bridge_default  Created                                                                                                                                              0.0s
+ [[ init == init ]]
+ gpg --generate-key --batch /protonmail/gpgparams
gpg: directory '/root/.gnupg' created
gpg: keybox '/root/.gnupg/pubring.kbx' created
gpg: Generating a basic OpenPGP key
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 1426CCDFE0A76307 marked as ultimately trusted
gpg: directory '/root/.gnupg/openpgp-revocs.d' created
gpg: revocation certificate stored as '/root/.gnupg/openpgp-revocs.d/CBF5DACAF50925FC135E06C41426CCDFE0A76307.rev'
gpg: done
+ pass init pass-key
mkdir: created directory '/root/.password-store/'
Password store initialized for pass-key
+ pkill protonmail-bridge
+ true
+ /protonmail/proton-bridge --cli init
INFO[Jan 19 10:10:43.962] No more updates found, looking up bridge executable  error="no available newer versions" exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /protonmail/bridge)
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /protonmail/bridge)
FATA[Jan 19 10:10:43.966] Failed to launch                              error="exit status 1" exe_path=/protonmail/bridge exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git

Device is a FriendlyElec NanoPi R6s. It's a arm64 SBC.

Thanks!

@Robb-Fr
Copy link

Robb-Fr commented Jan 21, 2023

Same error on MacOS M1 chip with the build aarch64 image

❯ docker run --rm -it -v protonmail:/root shenxn/protonmail-bridge:build init
+ [[ init == init ]]
+ gpg --generate-key --batch /protonmail/gpgparams
gpg: Generating a basic OpenPGP key
gpg: key 268C3B113AD506BA marked as ultimately trusted
gpg: revocation certificate stored as '/root/.gnupg/openpgp-revocs.d/F1F2058CC9050E8E91837591268C3B113AD506BA.rev'
gpg: done
+ pass init pass-key
Password store initialized for pass-key
+ pkill protonmail-bridge
+ true
+ /protonmail/proton-bridge --cli init
INFO[Jan 21 20:47:43.939] No more updates found, looking up bridge executable  error="no available newer versions" exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /protonmail/bridge)
/protonmail/bridge: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /protonmail/bridge)
FATA[Jan 21 20:47:43.940] Failed to launch                              error="exit status 1" exe_path=/protonmail/bridge exe_to_launch=bridge launcher_path=/protonmail/proton-bridge launcher_version=2.4.8+git

@schklom
Copy link

schklom commented Feb 5, 2023

In the meantime, try using shenxn/protonmail-bridge:2.4.0-build, it works for me for some reason.

@Lolen10
Copy link

Lolen10 commented Dec 19, 2023

This issue is still present but I have a workaround for you. With this you can execute the amd64-image on the raspberry pi (arm64).

Firstly run this:
docker run --privileged --rm tonistiigi/binfmt --install amd64
This will configure the host to be able to run amd64 containers.

Next download the amd64 image:
docker pull --platform=amd64 shenxn/protonmail-bridge:latest
The --platform parameter defines the platform this image should be. In this case amd64. If you leave it out you get the error "no matching manifest for linux/arm64/v8 in the manifest list entries" because it tries to download the arm64 version which doesn't exist in the latest-tag.

The last command to run is:
docker run -d --name=protonmail-bridge -v protonmail:/root -p 1025:25/tcp -p 1143:143/tcp --restart=unless-stopped --platform=amd64 shenxn/protonmail-bridge
If you have customized your installation, change this to your needs. The only important part is the --platform parameter (again).
This way it worked for me like a charm.

If you use portainer: You can't update it within portainer. It just doesn't work. For this you need to run the last 2 commands again.

If you don't need this anymore, you can uninstall it with:
docker run --privileged --rm tonistiigi/binfmt --uninstall amd64

@schklom
Copy link

schklom commented Feb 24, 2024

@Lolen10 How much CPU and RAM does a container running that image consume compared to the one made for arm64? I am wondering if using QEMU is very taxing or just barely.

@Lolen10
Copy link

Lolen10 commented Feb 24, 2024

@schklom I don't use this anymore, as it (somehow) doesn't work on my new Raspberry Pi 5 anymore (I migrated to RPi 5). When I used it on my RPi 4 back then it worked just fine. But now to your question.

My old RPi 4 had 1GB RAM and it was running along with some other containers. So I guess the RAM and CPU usage wasn't that high. But might be a bit higher than native.

@schklom
Copy link

schklom commented Nov 28, 2024

For anyone still having this issue, I am maintaining a patched version of this project (the small change is shown at https://github.com/schklom/Mirror-workflows/blob/a988066fe67e0f67f14a349288a40f909f7e6355/.github/workflows/Sync%2Bbuild%2Bpush%20Protonmail-bridge.yml#L72-L75) so that "build" image can compile for amd64 and arm64.
You can grab it at schklom/protonmail-bridge:latest (dockerhub).
The image checks the parent repos daily, and is updated if one of the parent repos has a new commit.

I will deprecate it when this image is patched #97 or if the dev finds a better solution and this image compiles https://github.com/shenxn/protonmail-bridge-docker/actions/workflows/build.yaml (build from source).

I use it personally on arm64.

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

No branches or pull requests

5 participants