-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[bitnami/redis] container crashed when docker run on arm64 #26062
Comments
Hi, In order to change the arch in the Dockerfile, did you modify the file, or you set the |
Hi In the Dockerfile, set the arg OS_ARCH=arm64. |
thank you for the response. |
Please reopen this issue as it still persists on ARM images This issue has been resolved in the official Redis container but not on Bitnami Hopefully someone from Bitnami can port the fix over |
I don't think they are the same thing. As the official redis image is working without running in privilege mode: |
I'll try to run some example in a different machine, bear with me. In my case the error is related to TPH (not the error described in the issue) but consistent in both images: $ docker run --platform="linux/arm64" -it redis:7.0
1:C 12 Apr 2024 07:43:46.671 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 12 Apr 2024 07:43:46.675 # Redis version=7.0.15, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 12 Apr 2024 07:43:46.676 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
1:M 12 Apr 2024 07:43:46.683 * monotonic clock: POSIX clock_gettime
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 7.0.15 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 1
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | https://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
1:M 12 Apr 2024 07:43:46.711 # Server initialized
1:M 12 Apr 2024 07:43:46.712 # WARNING You have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
1:M 12 Apr 2024 07:43:46.764 # WARNING Your kernel has a bug that could lead to data corruption during background save. Please upgrade to the latest stable kernel.
1:M 12 Apr 2024 07:43:46.764 # Redis will now exit to prevent data corruption. Note that it is possible to suppress this warning by setting the following config: ignore-warnings ARM64-COW-BUG
$ docker run --platform="linux/arm64" -it -e ALLOW_EMPTY_PASSWORD=yes -e BITNAMI_DEBUG=true bitnami/redis:7.0
redis 07:47:31.83 INFO ==>
redis 07:47:31.90 INFO ==> Welcome to the Bitnami redis container
redis 07:47:31.95 INFO ==> Subscribe to project updates by watching https://github.com/bitnami/containers
redis 07:47:31.99 INFO ==> Submit issues and feature requests at https://github.com/bitnami/containers/issues
redis 07:47:32.03 INFO ==> Upgrade to Tanzu Application Catalog for production environments to access custom-configured and pre-packaged software components. Gain enhanced features, including Software Bill of Materials (SBOM), CVE scan result reports, and VEX documents. To learn more, visit https://bitnami.com/enterprise
redis 07:47:32.08 INFO ==>
redis 07:47:32.19 DEBUG ==> Copying files from /opt/bitnami/redis/etc.default to /opt/bitnami/redis/etc
redis 07:47:32.29 INFO ==> ** Starting Redis setup **
redis 07:47:33.05 DEBUG ==> Validating settings in REDIS_* env vars..
redis 07:47:33.10 WARN ==> You set the environment variable ALLOW_EMPTY_PASSWORD=yes. For safety reasons, do not use this flag in a production environment.
redis 07:47:33.41 INFO ==> Initializing Redis
redis 07:47:33.48 DEBUG ==> Ensuring expected directories/files exist
redis 07:47:33.88 INFO ==> Setting Redis config file
redis 07:47:34.45 INFO ==> ** Redis setup finished! **
redis 07:47:34.65 INFO ==> ** Starting Redis **
1:C 12 Apr 2024 07:47:34.869 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 12 Apr 2024 07:47:34.873 # Redis version=7.0.15, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 12 Apr 2024 07:47:34.873 # Configuration loaded
1:M 12 Apr 2024 07:47:34.879 * monotonic clock: POSIX clock_gettime
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 7.0.15 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 1
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | https://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
1:M 12 Apr 2024 07:47:34.909 # Server initialized
1:M 12 Apr 2024 07:47:34.910 # WARNING You have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
1:M 12 Apr 2024 07:47:34.930 # WARNING Your kernel has a bug that could lead to data corruption during background save. Please upgrade to the latest stable kernel.
1:M 12 Apr 2024 07:47:34.930 # Redis will now exit to prevent data corruption. Note that it is possible to suppress this warning by setting the following config: ignore-warnings ARM64-COW-BUG |
Hi @networkhemit Could you share more details about the instance where you are facing the issue? I tried different instances without luck 😞 |
Do you have access to arm64 linux machine with 64K page size? You can verify the page size as following: $ getconf PAGE_SIZE
65536 I don't know if this issue can be emulated by qemu or docker. I noticed previous comment in #26062 (comment) mentioned that Oracle have arm64 linux box with 64K page size. Maybe you can create a free instance there. |
Hi, I've just reproduced the issue using a This error was fixed in the oficial image changing jemalloc compilation flags. |
I have the same issue on Raspberry Pi 5/ latest Raspberry Pi OS. |
I am happy to announce that following tags should fix (🤞) this issue:
You won't see any clue about the fix in the container code because new compilation flags were required to fix it. From now on Redis is compiled with |
Confirming that using |
|
Great! Thanks a lot for checking it. I think that I can close this issue, woop woop! |
@fmulero 6.2.14 still unsuccessful, 7. x is successful
|
open issues |
You right @jinjianming. I've just opened an internal task to amend it. |
Name and Version
bitnami/redis:7.0/6.2/5.0/6.0.9-debian-10-r66/7.0.9-*
What architecture are you using?
arm64
What steps will reproduce the bug?
What is the expected behavior?
container running successfully.
What do you see instead?
Additional information
my machine is aarch64.
after failed with above tags. I go through the docker build with https://github.com/bitnami/containers/blob/main/bitnami/redis/7.0/debian-11/Dockerfile
it seems the Dockerfile is under amd64, so i changed the orch from -amd64 to -arm64.
I got the error :
Can someone help to look at it? thanks.
The text was updated successfully, but these errors were encountered: