'Bug by "sudo docker ps -a" after break in power supply

I am facing a problem with docker engine (Grafana and Node-Re), which is installed on industrial PC. The PC is connected with PLC and is collecting data through ModBusTCP from PLC. If the central power plug is plug out then after restart of server, when I am trying to figuratout if docker is runing by typing

sudo docker ps -a

I am getting one of the following errors:

Segmentation fault

or

Inconsistency detected by ld.so: ../sysdeps/x86_64/dl-machine.h: 541: elf_machine_rela_relative: Assertion `ELFW(R_TYPE) (reloc->r_info) == R_X86_64_RELATIVE' failed!

or

panic: renter code hereuntime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x148 pc=0x5595eb91103d]

or

goroutine 1 [running]:
runtime: unexpected return pc for text/tabwriter.(*Writer).Write called from 0xc00041d620
stack: frame={sp:0xc00041d5a0, fp:0xc00041d6d8} stack=[0xc00040e000,0xc00041e000)
000000c00041d4a0:  00005595eb25e3b0 <runtime.fatalpanic.func1+0>  000000c00041d538
000000c00041d4b0:  000000c000000180  00005595eb233be6 <runtime.gopanic+710>
000000c00041d4c0:  000000c00041d4e0  000000c00041d49f
000000c00041d4d0:  000000c00041d560  00005595eb233be6 <runtime.gopanic+710>
000000c00041d4e0:  000000c00041d538  00005595ed1f78c8
000000c00041d4f0:  000000c00041dfc0  0000000800000008
000000c00041d500:  00005595eb23583c <runtime.main+268>  0000000000000080
000000c00041d510:  000000c00041df60  000000c000000180
000000c00041d520:  0000000000203000  000000c00041df90
000000c00041d530:  000000c0000001a8  0000000000000000
000000c00041d540:  00005595eceac4e0  000000c0003a0be0
000000c00041d550:  0000000000000000  0000000000000000
000000c00041d560:  000000c00041d590  00005595eb248ea0 <runtime.sigpanic+1008>
000000c00041d570:  00005595ecf66080  00005595ee0da9a0
000000c00041d580:  000000c0003001e0  00005595ec76fe3b
000000c00041d590:  000000c00041d6ca  00005595eb91103d <text/tabwriter.(*Writer).Write+109>
000000c00041d5a0: <0000000000000020  00005595ece2c4e0
000000c00041d5b0:  00005595eb2193e3 <runtime.typedmemmove+67>  000000c0002244e8
000000c00041d5c0:  000000c00041d658  00005595eb2e95b9 <fmt.(*pp).printArg+2169>
000000c00041d5d0:  000000c0003001a0  00005595ec76fe3b
000000c00041d5e0:  0000000000000010  0000559500000076
000000c00041d5f0:  00007fa1d65f66d0  0000000000000000
000000c00041d600:  0000000000000010  0000000000203000
000000c00041d610:  000000c0003a0bc0  010000c00041d648
000000c00041d620:  000000c00041d688  00005595eb24a1f0 <runtime.growslice+416>
000000c00041d630:  000000c00021c6c0  0000559500000020
000000c00041d640:  0000000000000001  000000c00021c6c0
000000c00041d650:  00007fa1d65f66d0  000000c00041d6c8
000000c00041d660:  00005595eb2edbd4 <fmt.(*pp).doPrintln+180>  000000c0003001a0
000000c00041d670:  00005595eceac4e0  00005595ed1f9480
000000c00041d680:  0000000000000076  00005595ed1a8900
000000c00041d690:  00005595eb90fead <text/tabwriter.(*Writer).addLine+445>  000000c0003001a0
000000c00041d6a0:  000000c00041d6c8  0000000000000000
000000c00041d6b0:  00005595ee0df620  00005595ed1a8900
000000c00041d6c0:  000000c00041d7e0  000000c00041d730
000000c00041d6d0: !000000c00041d620 >000000c000304370
000000c00041d6e0:  000000c0000c6100  0000000000000011
000000c00041d6f0:  0000000000000080  000000000000ff77
000000c00041d700:  0000000000000000  0000000000000000
000000c00041d710:  000000c00041d730  00005595eb91003e <text/tabwriter.(*Writer).Init+174>
000000c00041d720:  000000c0003001a0  000000c000304370
000000c00041d730:  000000c00041d810  00005595ebe9256e <github.com/docker/cli/cli/command/context.longCreateDescription+302>
000000c00041d740:  00005595ed2287e0  000000c000304370
000000c00041d750:  000000c00041d7e0  0000000000000001
000000c00041d760:  0000000000000001  0000000000000003
000000c00041d770:  000000c000190a20  0000000000000000
000000c00041d780:  000000c000304370  00005595ee187580
000000c00041d790:  00007fa1d65f66d0  0000000000000000
000000c00041d7a0:  000000c00041d840  000000c0003a40f0
000000c00041d7b0:  00007fa1d65f66d0  000000c000304370
000000c00041d7c0:  000000c00041d7f0  00005595eb211f5a <runtime.newobject+58>
000000c00041d7d0:  0000000000000010
text/tabwriter.(*Writer).Write(0xc000304370, 0xc0000c6100, 0x11, 0x80, 0xff77, 0x0, 0x0)
        /usr/local/go/src/text/tabwriter/tabwriter.go:531 +0x6d

instead of list of containers which are running or are stopped.

When I am rebooting system, using:

sudo reboot

Everything is once again OK and I can normally see a list of all containers and access them from web page.

Additionally sometimes Node-red container is taking unhealthy sate and I cannot restart such container, once again I have to restart the whole server.

I am using now following version of docker:

Client: Docker Engine - Community
 Version:           19.03.12
 API version:       1.40
 Go version:        go1.13.10
 Git commit:        48a66213fe
 Built:             Mon Jun 22 15:45:47 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.12
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.10
  Git commit:       48a66213fe
  Built:            Mon Jun 22 15:44:17 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

I am using Ubuntu Server 20.04.

Can you somehow help me in solving of this problem?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source