web-dev-qa-db-ja.com

トランスポートの原因:「dial unix /var/run/docker/containerd/docker-containerd.sock:connect:connection refused」?

この問題を解決する方法についての良い説明があります。 SOF Q1SOF Q2 およびSOFとインターネットに関する多くの関連質問。

私の心配は、この問題の原因と、Dockerがこの状態になる理由です。 (/ var/runには、アプリケーションの実行時データ、つまりdockerが含まれています。dockerが接続できない/ここに書き込むことができないのはなぜですか。この点が適切でない場合は、そのままにしてください。).

私の懸念は、私たちのドッカーシステムが数日間うまく機能していて安定していて、突然この問題が発生したことです。私は常にsys管理者にdockerまたはlinuxサーバーの再起動を要求することはできません(プロセスの問題..もちろん、私はdockerをよりよく理解することによってそれを防ぐことはしたくありません)。だから私はこの問題の発生を防ぐ必要がありました。

FedoraベースのLinuxを使用しており、Dockerのバージョン情報は次のとおりです。

サーバーのバージョン:17.12.0-ce
ストレージドライバー:overlay2バッキング
ファイルシステム:extfs
d_typeをサポート:true
ネイティブオーバーレイ差分:true
ロギングドライバー:json-file
Cgroupドライバー:cgroupfs

必要に応じて、より多くのドッカー情報を提供できます。

12
user8339674

このバグレポートを参照

これは、containerd 1.0.2で修正されています(現在リリース候補フェーズ)。これがリリースされたら、dockerdパッチリリースに含めることができます....これは、17.11以降のすべてのバージョンのdockerで問題になります...ただし、containerdパッチは17.12および18.03にのみ含まれることに注意してください(コンテナー化されたパッチはまもなくリリースされます)。

報告されている回避策はkillall -9 dockerdまたはシステムを再起動することですが、Dockerのバージョンを17.12.1または18.03に更新することをお勧めします。

8
Nefreo