मैं एक Dockerfile के साथ:
ENTRYPOINT ["uwsgi", "--ini /home/docker/app/uwsgi_app.ini"]
(नहीं CMD
)
जब मैं चलाता हूं कि यूडब्ल्यूएसजीआई सही शिकायत करता है:
uWSGI running as root, you can use --uid/--gid/--chroot options*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
अब, मैंने सोचा कि मैं एंट्रीपॉइंट के माध्यम से तर्क जोड़ सकता हूं docker run
ऐसा पसंद है:
$ docker run -itP uwsgi_app:0.1 --uid=docker
हालांकि यूडब्ल्यूएसजीआई अभी भी उसी त्रुटि के साथ शिकायत करता है, ऐसा लगता है कि एआरजी को जोड़ा नहीं गया है ।
अगर मैं एंट्रीपॉइंट को ओवरराइड करता हूं तो आर्ग जुड़ जाता है:
$ docker run -itP --entrypoint bash uwsgi_app:0.1 --uid=dockerbash: --uid=docker: invalid option
... मुझे आश्चर्य हुआ कि क्या यह यूडब्ल्यूएसजीआई था --ini
अन्य तर्कों को अनदेखा करने का विकल्प, लेकिन ऐसा नहीं है:
$ docker run -itP --entrypoint bash uwsgi_app:0.1[ root@88941de25b1f:/home/docker ]$ uwsgi --ini /home/docker/app/uwsgi_app.ini --uid=dockeruser docker not found.
(ठीक है, एक त्रुटि, लेकिन दिखाता है कि तर्क स्वीकार किया गया था)