From 0f51996adc647154c5f810b1543ab39cd514fd60 Mon Sep 17 00:00:00 2001 From: Alejandro Lembke Barrientos Date: Fri, 19 Apr 2024 14:31:21 +0000 Subject: [PATCH] Update entrypoint.sh and readme.md files Updating to version 3.0.30 --- entrypoint.sh | 20 ++++++++++++++------ readme.md | 27 +++++++++++++++++++++++++++ version.txt | 2 +- 3 files changed, 42 insertions(+), 7 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 014410a..14f06ac 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -73,13 +73,21 @@ else sudo chown -R ${HOME_USER} /home/${HOME_USER} fi -# Move the .bashrc file to the user's home directory -sudo mv /usr/bin/.bashrc /home/${HOME_USER}/.bashrc -sudo chown ${HOME_USER} /home/${HOME_USER}/.bashrc +# Move the .bashrc file to the user's home directory if it doesn't exist +if [ ! -f "/home/${HOME_USER}/.bashrc" ]; then + sudo mv /usr/bin/.bashrc /home/${HOME_USER}/.bashrc + sudo chown ${HOME_USER} /home/${HOME_USER}/.bashrc +else + sudo rm -f /usr/bin/.bashrc +fi -# Move the .profile file to the user's home directory -sudo mv /usr/bin/.profile /home/${HOME_USER}/.profile -sudo chown ${HOME_USER} /home/${HOME_USER}/.profile +# Move the .profile file to the user's home directory if it doesn't exist +if [ ! -f "/home/${HOME_USER}/.profile" ]; then + sudo mv /usr/bin/.profile /home/${HOME_USER}/.profile + sudo chown ${HOME_USER} /home/${HOME_USER}/.profile +else + sudo rm -f /usr/bin/.profile +fi # Find .sh files in /usr/bin/custom-scripts and execute them in order for script in $(find /usr/bin/custom-scripts -name "*.sh" | sort); do diff --git a/readme.md b/readme.md index 5185b48..b12667e 100644 --- a/readme.md +++ b/readme.md @@ -145,6 +145,33 @@ When you start your Docker container, all .sh files in the /usr/bin/custom-scrip Remember to replace install_node.sh with the name of your script and ./custom-scripts with the actual path to the directory on your host machine that maps to the /usr/bin/custom-scripts volume in the Docker container. +## Using this image as a base image in a Dockerfile + +To use this image as a base image in a Dockerfile, you can add the following line to the top of your Dockerfile and you can install any additional packages you need, here an example installing nvm and nodejs in a `Dockerfile`: + +``` +FROM aleleba/vscode:latest + +ENV HOME_USER=vscode + +RUN sudo adduser --disabled-password --gecos "" --uid 1000 ${HOME_USER} +RUN sudo echo "$HOME_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null + +USER ${HOME_USER} +WORKDIR /home/${HOME_USER} + +# Installing node.js and NVM +SHELL ["/bin/bash", "--login", "-i", "-c"] +RUN curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash +RUN nvm install --lts +RUN nvm alias default lts/* +SHELL ["/bin/sh", "-c"] +RUN echo 'source ~/.nvm/nvm.sh' >> ~/.bashrc +# Finishing installing node.js and NVM + +``` +> **Note:** If you are using this image as a base image in a Dockerfile, ensure that the value of `HOME_USER` is the same as the one you will use when creating the container. This is necessary to ensure that all configurations and packages are installed in the correct user directory. + ## Contributing If you'd like to contribute to this project, please fork the repository and create a pull request. diff --git a/version.txt b/version.txt index 0667b5f..bdb1390 100755 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -3.0.29 \ No newline at end of file +3.0.30 \ No newline at end of file