[Docker] Pythonのos.getlogin()が使えない!?

Docker python os.getlogin使えない

Dockerfile内に下記のコードのようにos.getlogin()でユーザー名を取得してしていたのですが、Dockerをビルドする時にエラーが出ました。

Dockerfile

  File "/code/app/website/settings.py", line 29, in 
    if os.getlogin()=='username':
OSError: [Errno 25] Inappropriate ioctl for device

よくよく考えてみるとコンテナ内のログインユーザーってなんだろう?ってことなんですが、代わりにos.environ.get("USER")に置き換えたところ無事にビルドが通りました(^^)

同じ問題でつまずいている人の参考になれば嬉しいです!

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください