-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile.test
42 lines (33 loc) · 1.19 KB
/
Dockerfile.test
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
FROM ruby:3.2.6-alpine
ENV INSTALL_PATH /app
ENV BUNDLE_PATH=/usr/local/bundle \
BUNDLE_BIN=/usr/local/bundle/bin \
GEM_HOME=/usr/local/bundle
ENV PATH="${BUNDLE_BIN}:${PATH}"
ENV USER docker
ENV BUNDLER_VERSION='2.4.13'
WORKDIR $INSTALL_PATH
ENV NODE_PACKAGES nodejs npm
ENV NODE_BUILD_PACKAGES git
RUN apk add --update --no-cache $NODE_PACKAGES $NODE_BUILD_PACKAGES \
&& npm install -g [email protected] \
&& npm install -g swagger-to-md \
&& npm install sync-request caseless \
&& npm cache clean --force
#&& apk del $NODE_BUILD_PACKAGES
RUN addgroup -g 1000 -S docker \
&& adduser -u 1000 -S -G docker docker
COPY --chown=docker:docker Gemfile Gemfile.lock ./
ENV RUBY_BUILD_PACKAGES ruby-dev build-base linux-headers
RUN apk add --no-cache $RUBY_BUILD_PACKAGES \
&& gem install bundler -v ${BUNDLER_VERSION} \
&& bundle config --local github.https true \
&& bundle install --jobs 20 --retry 5 \
&& rm -rf /root/.bundle && rm -rf /root/.gem \
&& rm -rf /usr/local/bundle/cache \
#&& apk del $RUBY_BUILD_PACKAGES \
&& chown -R docker:docker /usr/local/bundle
RUN mkdir coverage && chown docker:docker coverage
USER docker
COPY --chown=docker:docker . .
CMD bundle exec rake