From 4bd99bcfa21a2c83c1958445ea7347439e894309 Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Thu, 12 Jul 2018 12:29:46 +0800 Subject: [PATCH] [Dockerfile] Refactor to prevent using `sudo` during build `sudo` may lead to unpredictable behavior in some cases, and we don't really need to use `sudo` to reach what we need. --- Dockerfile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index d2ac044..d4b0f1b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -88,6 +88,10 @@ RUN wget --version # Add user "nvm" as non-root user RUN useradd -ms /bin/bash nvm +# Copy and set permission for nvm directory +COPY . /home/nvm/.nvm/ +RUN chown nvm:nvm -R "home/nvm/.nvm" + # Set sudoer for "nvm" RUN echo 'nvm ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers @@ -95,8 +99,6 @@ RUN echo 'nvm ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers USER nvm # nvm -COPY . /home/nvm/.nvm/ -RUN sudo chown nvm:nvm -R "$HOME/.nvm" RUN echo 'export NVM_DIR="$HOME/.nvm"' >> "$HOME/.bashrc" RUN echo '[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm' >> "$HOME/.bashrc" RUN echo '[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" # This loads nvm bash_completion' >> "$HOME/.bashrc"