SELinuxが有効な環境でdockerコンテナの実行に失敗する問題を修正する

· ·

我が家ではdocker contextを用いてFedora CoreOS上でdockerコンテナを実行している。

dockerコンテナを起動した際に稀にパーミッションエラーで起動できないことがあった。

その状態が発生する根本的な原因は分かっていないものの、とりあえず修復する方法は分かったので備忘録として残しておく。

起動できない原因はSELinuxのSecurity Contextがおかしくなっていることで、dockerのディレクトリを見ると unlabeled_t となっているものがあった。

ls -lZ /var/lib/docker/overlay2/

修復するためには以下のコマンドを実行する。

restorecon -R /var/lib/docker/