termux-packages icon indicating copy to clipboard operation
termux-packages copied to clipboard

[Bug]: Update of docker to 23.0.0 seems to have broken containerd/docker

Open shaunmulligan opened this issue 3 years ago • 4 comments

Problem description

Docker was working perfectly in termux last week and this week after setting up a new devices it fails with the following error:

INFO[2023-02-16T12:18:52.105596061Z] [core] [Channel #1 SubChannel #2] Subchannel picks a new address "/data/docker/run/docker/containerd/containerd.sock" to connect  module=grpc
INFO[2023-02-16T12:18:52.105620488Z] [core] [Channel #1] Channel Connectivity change to CONNECTING  module=grpc
containerd: failed to load TOML from /data/docker/run/docker/containerd/containerd.toml: invalid plugin key URI "opt" expect io.containerd.x.vx
ERRO[2023-02-16T12:18:52.136275856Z] containerd did not exit successfully          error="exit status 1" module=libcontainerd
WARN[2023-02-16T12:18:53.106840901Z] [core] [Channel #1 SubChannel #2] grpc: addrConn.createTransport failed to connect to {
  "Addr": "/data/docker/run/docker/containerd/containerd.sock",
  "ServerName": "localhost",
  "Attributes": {},
  "BalancerAttributes": null,
  "Type": 0,
  "Metadata": null
}. Err: connection error: desc = "transport: error while dialing: dial unix:///data/docker/run/docker/containerd/containerd.sock: timeout"  module=grpc

It seems that this update https://github.com/termux/termux-packages/commit/5a67dcf6786a15ef2971b795028dd8eda47a4826 changed the place where containerd is reading the config from and so it doesn't launch correctly.

What steps will reproduce the bug?

Install new termux instance, pkg install root-repo && pkg install docker then run sudo dockerd

What is the expected behavior?

sudo dockerd starts up with no errors.

System information

termux-info:

Termux Variables:
TERMUX_APP_PACKAGE_MANAGER=apt
TERMUX_VERSION=0.118.0
Packages CPU architecture:
aarch64
Subscribed repositories:
# sources.list
deb https://packages.termux.dev/apt/termux-main stable main
# root-repo (sources.list.d/root.list)
deb https://packages.termux.dev/apt/termux-root root stable
Updatable packages:
All packages up to date
termux-tools version:
1.37.0
Android version:
13
Kernel build information:
Linux localhost 4.14.289-gfab67052f14a #1 SMP PREEMPT Tue Feb 14 14:27:22 UTC 2023 aarch64 Android
Device manufacturer:
Google
Device model:
Pixel 4a
LD Variables:
LD_LIBRARY_PATH=
LD_PRELOAD=/data/data/com.termux/files/usr/lib/libtermux-exec.so

shaunmulligan avatar Feb 16 '23 12:02 shaunmulligan

I cannot fix this on my own, because I do not have any rooted environment. PR is welcome. Thanks!

xtkoba avatar Feb 16 '23 13:02 xtkoba

Thanks @xtkoba , I am looking into trying to create a patch, but a bit out of my depth with the go. I think maybe just reverting the changes on root-packages/docker/config.go.patch might do the trick. Failing that reverting the to the older 20.10 version of docker might be the way to go?

shaunmulligan avatar Feb 16 '23 13:02 shaunmulligan

Yes, a PR just reverting the bump can be acceptable. Thanks!!!

xtkoba avatar Feb 16 '23 14:02 xtkoba

No problem @xtkoba , I have put up a PR to revert this here: https://github.com/termux/termux-packages/pull/15233

shaunmulligan avatar Feb 16 '23 14:02 shaunmulligan