Docker: نسخ بيانات التمهيد إلى الأنبوب تسبب خطأ "كتابة init-p: أنبوب مكسور"

مرحباً،

أنا حالياً خارج البلاد، وبشكل غبي، أردت تحديث خادم Discourse الخاص بي — وعادة ما يتم ذلك دون مشاكل.

بعد التحديث، لم يعد المنتدى يعمل. جربت أمر git pull وإعادة بناء المُشغّل (launcher rebuild)، لكن هذا الخطأ لا يزال يظهر:

/usr/bin/docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused “process_linux.go:297: copying bootstrap data to pipe caused "write init-p: broken pipe"”: unknown.
تثبيت Docker لديك لا يعمل بشكل صحيح

انظر: Troubleshoot docker installation issues

لم أجد الكثير من خلال البحث في المنتدى — سوى عبارة “تثبيت Docker لديك لا يعمل”. لم أقم بتغيير أي شيء، والجهاز نفسه مخصص لـ Discourse. حاولت إعادة تثبيت Docker، لكن لا شيء تغير…

أي مساعدة لاستعادة عمل المنتدى ستكون موضع تقدير كبير :slight_smile:

النظام يعمل بنظام Ubuntu 14.04.5 LTS على Digital Ocean (لم أكن متأكداً مما إذا كان آمناً الترقية إلى 16.04)…

من الخيط الذي قمت بتشغيله:

root@forum:~# docker run --rm -i -a stdin -a stdout ubuntu echo 1
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:297: copying bootstrap data to pipe caused \"write init-p: broken pipe\"": unknown.

إصدار Docker:

# docker -v
Docker version 18.06.2-ce, build 6d37f41

Did you try a reboot on the server?

Several, to no avail :confused:

If a simple

fails, docker is completely broken in your server. Can you share the output of df -h ?

Sure. There should be enough space:

root@forum:~# df -h
Filesystem                 Size  Used Avail Use% Mounted on
udev                       3.9G  4.0K  3.9G   1% /dev
tmpfs                      799M  360K  799M   1% /run
/dev/disk/by-label/DOROOT  158G  117G   34G  78% /
none                       4.0K     0  4.0K   0% /sys/fs/cgroup
none                       5.0M     0  5.0M   0% /run/lock
none                       3.9G     0  3.9G   0% /run/shm
none                       100M     0  100M   0% /run/user

Is the docker service running? service docker start

Yep, running:

root@forum:/var/discourse# service docker start
start: Job is already running: docker
root@forum:/var/discourse# ps aux | grep docker
root      1687  0.2  0.9 881840 76188 ?        Ssl  13:26   0:05 /usr/bin/dockerd --raw-logs
root      1701  0.2  0.4 564568 35080 ?        Ssl  13:26   0:05 docker-containerd --config /var/run/docker/containerd/containerd.toml

لا أستطيع فهم الأمر. هل يمكنني إنشاء خادم جديد (باستخدام Ubuntu 18.04) وتثبيت Docker فقط ثم نسخ /var/discourse؟

Yes. That should work.

I hope so. Currently copying over a crapton of data :stuck_out_tongue_winking_eye: It’ll take a while :confused:

If you’d be satisfied with the latest backup you could copy just that and the containers directory.

I need the latest of everything … It looks like it’s working - Waiting for DNS to propagate fully :slight_smile:

The problem is the version of the kernel and docker. It’s a security updete from docker

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5736

Man, I wish I had seen that… I spent 5 hours debugging, searching, then creating a new droplet and copying everything over and waiting for DNS to propagate :stuck_out_tongue_winking_eye: Oh, well, now I have a 18.04 droplet running the forum…