Měl jsem podobný problém při pokusu o to, aby můj kontejner dockeru umožnil skriptům jenkins používat příkazy sudo bez výzvy k zadání hesla.
To bylo vyřešeno pomocí Dockerfile:
RUN echo "jenkins ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
Abyste to mohli udělat, měli byste se ujistit, že máte ve svém sudoers následující řádek soubor:
%sudo ALL=(ALL:ALL) ALL
Výše uvedený řádek můžete upravit a změnit oprávnění stejně jako %sudo byl uživatel. Tento řádek povolí všechny uživatele v sudo skupinu použít sudo .
Nyní povolit <username> použít sudo , stačí udělat usermod -a -G sudo <username> jako root, který přidá <username> na sudo skupina.
Můžete použít cat pro připojení textu na konec /etc/sudoers . Nejprve si vytvořte záložní kopii svého /etc/sudoers soubor. Potom:
cat >> /etc/sudoers
...type one or more lines here...
[control-D]
Rozhodně se ujistěte, že používáte dva znaků větší než (>> ) a ne pouze jeden, jinak přepíšete celý obsah svého souboru.