Docker コンテナ内でユーザ権限でプログラムを動作させるのに gosu を使っている方もいらっしゃると思います。Alpine イメージを使う時には他の選択肢もあるよ、ということで su-exec を紹介させていただきます。 そもそも gosu とは? 指定したユーザ、グループでプログラムを動作させることができます。 [リポジトリはこちら] https://github.com/tianon/gosu gosu が作られた動機 gosu の README に作られた動機が書かれています。su, sudo が予測不可能な TTY、シグナル送信の振る舞いをする問題を持っているためです。同等のことが、Best practices for writing Dockerfiles にも記載されており、gosu を検討してみてはと書かれています。 Avoid installing or using
![[Docker] Alpine イメージで gosu に代わる選択肢、su-exec について - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/c5ef16811ed54ca3c6ee547d381ee809351f3109/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JTVCRG9ja2VyJTVEJTIwQWxwaW5lJTIwJUUzJTgyJUE0JUUzJTgzJUExJUUzJTgzJUJDJUUzJTgyJUI4JUUzJTgxJUE3JTIwZ29zdSUyMCVFMyU4MSVBQiVFNCVCQiVBMyVFMyU4MiU4RiVFMyU4MiU4QiVFOSU4MSVCOCVFNiU4QSU5RSVFOCU4MiVBMiVFMyU4MCU4MXN1LWV4ZWMlMjAlRTMlODElQUIlRTMlODElQTQlRTMlODElODQlRTMlODElQTYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTQ4NmQzNzNhZDE3ODRlZmQwNmIzOGQzMzc2MWUyMWQx%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwYW9fbG9nJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1hNDc0NWFjZTA1ODdmMzQ4ZDkyOTA2OGZkZjY4YTYwYQ%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D33a65b2f0249c0b3ad24dc9d85fe5820)