Tweak global path fix

This commit is contained in:
Chuck Lantz
2020-01-18 00:33:53 +00:00
parent 145ef89e6f
commit fa1212b960

View File

@@ -17,6 +17,8 @@ ARG USER_UID=1000
ARG USER_GID=$USER_UID ARG USER_GID=$USER_UID
ARG USERNAME=node ARG USERNAME=node
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
# [Optional] Update UID/GID if needed # [Optional] Update UID/GID if needed
RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
groupmod --gid $USER_GID $USERNAME \ groupmod --gid $USER_GID $USERNAME \
@@ -24,14 +26,11 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
&& chown -R $USER_UID:$USER_GID /home/$USERNAME; \ && chown -R $USER_UID:$USER_GID /home/$USERNAME; \
fi \ fi \
# #
# Avoid having to use "sudo" with "npm -g" when running as non-root user # Set alternate global install location that both uses have rights to access
&& SNIPPET='if [ "$(stat -c %U /usr/local/lib/node_modules)" != "$(id -u)" ]; then \ && mkdir -p /usr/local/share/npm-global \
sudo chown -R $(id -u):root /usr/local/lib/node_modules \ && chown ${USERNAME}:root /usr/local/share/npm-global \
&& sudo chown -R $(id -u):root /usr/local/bin; \ && npm config -g set prefix /usr/local/share/npm-global \
fi' \ && sudo -u ${USERNAME} npm config -g set prefix /usr/local/share/npm-global \
&& echo $SNIPPET >> /home/$USERNAME/.bashrc \
&& echo $SNIPPET >> /home/$USERNAME/.zshrc \
&& chown $USERNAME /home/$USERNAME/.bashrc /home/$USERNAME/.zshrc \
# ************************************************************* # *************************************************************