Oracle Linux 7.7にDocker公式リポジトリからDockerを入れたら素直に動いてくれなかった
[root@instance-20200211-1157 audit]# docker run hello-world
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "process_linux.go:449: container init caused \"write /proc/self/attr/keycreate: permission denied\"": unknown.
ERRO[0000] error waiting for container: context canceled
SELinuxを無効にしたら動いてくれたのでそれでよしとしてもよかったのだが、Oracle Cloud上で動いているサーバなのでSELinuxは有効の状態にしておきたかった
いろいろ調べてみると、どうやらDockerをインストールするときにcontainer-selinuxというパッケージが一緒にインストールされていてそいつがSELinuxのポリシーらしく、Docker側でSELinuxを扱えるようにしてあげる必要があるらしい
SELinuxを扱えるようにするには、dockerdにオプションで--selinux-enabledを渡すか、/etc/docker/daemon.jsonに"selinux-enabled": trueを追記してあげるとよいようだ
Docker - How to set SELinux file contexts when using a custom Docker data root