Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Dockerのalpine linuxベースな環境でrootで入って強引にパッケージをいれる

Dockerで構築したAlpine Linuxベースの環境に別のパッケージを入れようとした時の事

パッケージを入れようと端末に入れば

$ apk update
ERROR: Unable to lock database: Permission denied
ERROR: Failed to open apk database: Permission denied

と怒られ、じゃあrootで入りなおすかとすると

$ su
su: must be suid to work properly

などと言われる始末。

仕方がないので、dockerコマンドでroot権限で入る方法を試しました。

実際のところ

docker execで、ユーザーをrootに設定してやればよいです。

$ docker exec -it --user root yourContainer bash

特殊なユーザーの場合はImageのInspectを参考にユーザー名を決めてやるとうまくいくかもしれません。