我是怎么做到的,我用的不是Ubuntu而是Alpine,但它应该很好:
创建并运行一个名为“developer”的用户
停靠文件
RUN /bin/bash -c "adduser -D -u 1000 developer"
RUN passwd -d developer
RUN chown -R developer /home/developer/.bash*
RUN echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer
ENTRYPOINT ["/entrypoint.sh"]
CMD ["bash"]
入口点.sh
# stuff I need running as root here. Then below runs a bash shell as "developer"
sudo -u developer -H bash -c "$@;"
我想您应该将ENTRYPOINT更改为CMD或类似的命令,或者将其写入ENTRYPOINT.sh,尽管您希望启动java工具。