-
Notifications
You must be signed in to change notification settings - Fork 575
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
redis:alpine won't start since 6.2.0 #273
Comments
I'm not able to reproduce, maybe it's a corrupted pull? You could try $ docker run -d --rm --name redis --network=test redis:alpine
Unable to find image 'redis:alpine' locally
alpine: Pulling from library/redis
ba3557a56b15: Pull complete
4f47664a3e94: Pull complete
f5c47feea59c: Pull complete
272e3afc50bf: Pull complete
805d34969732: Pull complete
37f0fe75cbce: Pull complete
Digest: sha256:13d80faeb3c96148bacb39e56aff3fcc3965efbc49be571b1599dfb1908450a7
Status: Downloaded newer image for redis:alpine
0d03a1a011d2ebeaf883604c7f123fb1d7a175e63bcca06b785bb91386f0b71d
$ docker logs redis
1:C 12 Mar 2021 15:52:17.849 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 12 Mar 2021 15:52:17.849 # Redis version=6.2.1, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 12 Mar 2021 15:52:17.849 # 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 Mar 2021 15:52:17.849 * monotonic clock: POSIX clock_gettime
1:M 12 Mar 2021 15:52:17.850 * Running mode=standalone, port=6379.
1:M 12 Mar 2021 15:52:17.850 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
1:M 12 Mar 2021 15:52:17.850 # Server initialized
1:M 12 Mar 2021 15:52:17.851 * Ready to accept connections
$ docker run -it --rm --network=test redis:alpine redis-cli -h redis
redis:6379> INFO server
# Server
redis_version:6.2.1
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:15f14c5aba126a5a
redis_mode:standalone
os:Linux 4.4.0-96-generic x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:10.2.1
process_id:1
process_supervised:no
run_id:e1a32dc5769189afdba23dbdb49d79082b7a3aa3
tcp_port:6379
server_time_usec:1615564628094452
uptime_in_seconds:140
uptime_in_days:0
hz:10
configured_hz:10
lru_clock:4951892
executable:/data/redis-server
config_file:
io_threads_active:0
redis:6379> |
Doesn't seem like a corrupted image issue.
Must be something environmental. Happy to close it given you can't reproduce. I'll update if I find the cause. |
Are you running an arm based image? Possibly a duplicate of #272 and #269 (comment) |
20.04 Ubuntu x86 64 |
Hello, why was this closed? Did you find a fix? We're seeing this exact issue on some RHEL 7 x86 systems with IPv6 disabled (unfortunately I don't have access to the systems to dig any further, and getting IPv6 enabled is a big change request) I haven't been able to reproduce locally, the only suspicious thing in the server logs is this line: dockerd[1195]: time="2021-03-11T14:35:55-05:00"
level=warning msg="file does not exist: /proc/sys/net/ipv6/conf/all/disable_ipv6 :
stat /proc/sys/net/ipv6/conf/all/disable_ipv6: no such file or directory
Has IPv6 been disabled in this node's kernel?" so I assume it's some funky combo of alpine+redis not realising IPv6 is disabled and trying to bind an IPv6 address |
Oh you're totally right. I have another 20.04 box with ipv6 enabled. ipv6 enabled.
|
Confirmed on the ipv4 only box using default redis.conf from https://raw.githubusercontent.com/redis/redis/6.2.1/redis.conf and changing
|
listenToPort attempts to gracefully handle and ignore certain errors but does not store errno prior to logging, which in turn calls several libc functions that may overwrite errno. This has been discovered due to libmusl strftime() always returning with errno set to EINVAL, which resulted with redis/docker-library-redis#273.
I have this problem on Arch Linux with kernel 5.10.27-1-lts and Docker image My kernel command line parameters include |
This should be fixed in the next patch-level release (6.2.2 ETA ~13/4/2021). |
listenToPort attempts to gracefully handle and ignore certain errors but does not store errno prior to logging, which in turn calls several libc functions that may overwrite errno. This has been discovered due to libmusl strftime() always returning with errno set to EINVAL, which resulted with redis/docker-library-redis#273. (cherry picked from commit df5f543)
This is probably long-since fixed now, right? |
Yes - committed and resolved the issue for me 👍 |
listenToPort attempts to gracefully handle and ignore certain errors but does not store errno prior to logging, which in turn calls several libc functions that may overwrite errno. This has been discovered due to libmusl strftime() always returning with errno set to EINVAL, which resulted with redis/docker-library-redis#273.
I can't figure out why the redis:alpine image no longer starts. Other redis images are fine. Can anyone else replicate this?
For now, I'm using as a workaround redis:6.0-alpine
The text was updated successfully, but these errors were encountered: