fix eslint watch mode
This commit is contained in:
63
Dockerfile
63
Dockerfile
@@ -1,58 +1,63 @@
|
||||
FROM ruby:3.1.2-alpine
|
||||
FROM ruby:3.1.2-slim-bullseye
|
||||
|
||||
ENV TZ=America/Sao_Paulo
|
||||
|
||||
# App variables
|
||||
ENV APP_PATH /progress-test/
|
||||
ENV APP_USER progress-test
|
||||
ENV APP_USER_HOME /home/progress-test
|
||||
# Bundler variables
|
||||
|
||||
ENV NODE_VERSION 16.14.2
|
||||
ENV NVM_DIR /usr/local/nvm
|
||||
|
||||
ENV BUNDLE_PATH $APP_USER_HOME
|
||||
ENV GEM_HOME $APP_USER_HOME/bundle
|
||||
ENV BUNDLE_BIN $GEM_HOME/bin
|
||||
# Rails variables
|
||||
ENV RAILS_LOG_TO_STDOUT=true
|
||||
# System variables
|
||||
ENV PATH $PATH:$BUNDLE_BIN
|
||||
# Timezone
|
||||
ENV TZ=America/Sao_Paulo
|
||||
|
||||
# Puma
|
||||
ENV RAILS_LOG_TO_STDOUT=true
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
# UID of the user that will be created
|
||||
ARG UID
|
||||
|
||||
# Validating if UID argument was provided
|
||||
RUN : "${UID:?You must provide a UID argument when building this image.}"
|
||||
|
||||
# Creating an user so we don't run everything as root
|
||||
RUN adduser -h $APP_USER_HOME -D -u $UID $APP_USER
|
||||
RUN adduser --home $APP_USER_HOME --disabled-password --uid $UID --shell /bin/bash $APP_USER
|
||||
|
||||
# cd to $APP_PATH
|
||||
WORKDIR $APP_PATH
|
||||
|
||||
COPY Gemfile* package.json yarn.lock $APP_PATH
|
||||
|
||||
# Installing libraries and gems
|
||||
# Installing packages, gems and node modules
|
||||
# The package shared-mime-info is required in a Rails dependency
|
||||
# shared-mime-info ref: https://vtex.slack.com/archives/CE16Q9XRT/p1616716948056900
|
||||
RUN apk update && \
|
||||
apk add --no-cache \
|
||||
git \
|
||||
build-base \
|
||||
postgresql-dev \
|
||||
tzdata \
|
||||
nodejs \
|
||||
yarn \
|
||||
less \
|
||||
bash \
|
||||
graphviz \
|
||||
shared-mime-info && \
|
||||
|
||||
RUN rm /bin/sh && ln -s /bin/bash /bin/sh && \
|
||||
apt-get update && apt-get -y upgrade && \
|
||||
apt-get -y install build-essential bash libxml2-dev libxslt1-dev musl-dev \
|
||||
shared-mime-info git curl tzdata wget gnupg2 lsb-release dh-autoreconf graphviz watchman && \
|
||||
ln -s /usr/lib/x86_64-linux-musl/libc.so /lib/libc.musl-x86_64.so.1 && \
|
||||
mkdir -p $NVM_DIR && \
|
||||
curl --silent -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash && \
|
||||
source $NVM_DIR/nvm.sh && \
|
||||
nvm install $NODE_VERSION && \
|
||||
nvm alias default $NODE_VERSION && \
|
||||
nvm use default
|
||||
|
||||
RUN sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' && \
|
||||
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - && \
|
||||
apt-get update && apt-get install -y libpq5 libpq-dev postgresql-client-13 postgresql-server-dev-13
|
||||
|
||||
ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules
|
||||
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH
|
||||
|
||||
RUN npm install -g yarn && yarn && \
|
||||
bundle config git.allow_insecure true && \
|
||||
bundle config jobs $(nproc --all) && \
|
||||
bundle install && \
|
||||
yarn && \
|
||||
chown -R $APP_USER:$APP_USER $APP_USER_HOME && \
|
||||
chown -R $APP_USER:$APP_USER $APP_PATH && \
|
||||
rm -r /var/cache/apk/*
|
||||
apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY --chown=progress-test . $APP_PATH
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ services:
|
||||
<<: *rails
|
||||
container_name: progress-test-esbuild
|
||||
command:
|
||||
sh -c 'yarn build --watch'
|
||||
sh -c 'sleep 9999999999 | yarn build --watch'
|
||||
|
||||
db:
|
||||
image: postgres:11.3-alpine
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
},
|
||||
"scripts": {
|
||||
"build": "esbuild app/javascript/*.* --bundle --sourcemap --outdir=app/assets/builds --public-path=assets --loader:.png=file --loader:.svg=file",
|
||||
"build:watch": "esbuild --watch app/javascript/*.* --bundle --sourcemap --outdir=app/assets/builds --public-path=assets --loader:.png=file --loader:.svg=file",
|
||||
"build-styles": "postcss app/assets/stylesheets/tailwind.css -o app/assets/stylesheets/main.css"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
Reference in New Issue
Block a user