feat: dockerfile
This commit is contained in:
38
Dockerfile
Normal file
38
Dockerfile
Normal file
@@ -0,0 +1,38 @@
|
||||
FROM node:22-alpine3.20 AS node
|
||||
FROM alpine:3.20
|
||||
|
||||
RUN apk add --no-cache \
|
||||
openjdk21-jdk \
|
||||
maven \
|
||||
git \
|
||||
openssh-client \
|
||||
bash \
|
||||
curl \
|
||||
ca-certificates \
|
||||
tini \
|
||||
libstdc++ \
|
||||
libgcc
|
||||
|
||||
COPY --from=node /usr/local /usr/local
|
||||
|
||||
RUN npm config set fund false && npm config set audit false \
|
||||
&& npm i -g \
|
||||
semantic-release \
|
||||
@semantic-release/changelog \
|
||||
@semantic-release/git \
|
||||
@semantic-release/exec \
|
||||
conventional-changelog-conventionalcommits
|
||||
|
||||
RUN addgroup -S ci \
|
||||
&& adduser -S -G ci -h /home/ci -s /bin/bash ci \
|
||||
&& mkdir -p /workspace /home/ci/.m2 \
|
||||
&& chown -R ci:ci /workspace /home/ci
|
||||
|
||||
ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk
|
||||
ENV MAVEN_CONFIG=/home/ci/.m2
|
||||
WORKDIR /workspace
|
||||
|
||||
USER ci
|
||||
|
||||
ENTRYPOINT ["/sbin/tini","--"]
|
||||
CMD ["/bin/bash","-lc","bash"]
|
||||
Reference in New Issue
Block a user