# pre-build stage ARG VARIANT=3 FROM mcr.microsoft.com/vscode/devcontainers/ruby:${VARIANT} # Update args in docker-compose.yaml to set the UID/GID of the "vscode" user. ARG USER_UID=1000 ARG USER_GID=$USER_UID RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \ groupmod --gid $USER_GID vscode \ && usermod --uid $USER_UID --gid $USER_GID vscode \ && chmod -R $USER_UID:$USER_GID /home/vscode; \ fi # [Option] Install Node.js ARG INSTALL_NODE="true" ARG NODE_VERSION="lts/*" RUN if [ "${INSTALL_NODE}" = "true" ]; then su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ && apt-get -y install --no-install-recommends \ libssl-dev \ tar \ tzdata \ postgresql-client \ yarn \ git \ imagemagick \ tmux \ zsh # Install overmind RUN curl -L https://github.com/DarthSim/overmind/releases/download/v2.1.0/overmind-v2.1.0-linux-amd64.gz > overmind.gz \ && gunzip overmind.gz \ && sudo mv overmind /usr/local/bin \ && chmod +x /usr/local/bin/overmind # Do the set up required for chatwoot app WORKDIR /workspace COPY . /workspace RUN yarn COPY Gemfile Gemfile.lock ./ RUN gem install bundler && bundle install