Skip to content

Commit 2247456

Browse files
committed
support for local oydid gem
1 parent 99e06aa commit 2247456

File tree

1 file changed

+58
-0
lines changed

1 file changed

+58
-0
lines changed

cli/docker/Dockerfile-local

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
FROM node:16 AS node_builder
2+
3+
WORKDIR /app
4+
ENV NODE_ENV=development
5+
COPY *.json ./
6+
COPY ./res ./res
7+
COPY ./src ./src
8+
RUN npm install && \
9+
npm run build
10+
11+
#########################################
12+
13+
FROM maven:3-openjdk-8 AS java_builder
14+
15+
RUN mkdir -p /app && \
16+
cd /app && \
17+
git clone https://github.com/bazaarvoice/jolt.git && \
18+
cd jolt && \
19+
mvn clean package
20+
WORKDIR /app
21+
22+
#########################################
23+
24+
FROM ruby:3.2.2-alpine
25+
LABEL org.opencontainers.image.authors="Christoph Fabianek <christoph@ownyourdata.eu>"
26+
27+
COPY docker/local-gem/*.gem /tmp/
28+
29+
RUN addgroup -S user && \
30+
adduser -S user -G user && \
31+
apk add --no-cache vim libsodium-dev git make gcc musl-dev jq npm openjdk8 bash curl py3-pip && \
32+
gem install /tmp/*.gem && \
33+
gem install httparty ed25519 multibases multihashes multicodecs json-canonicalization optparse rbnacl dag uri && \
34+
gem install securerandom -v 0.1.1 && \
35+
apk del make gcc musl-dev && \
36+
apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python && \
37+
pip3 install --no-cache --upgrade pip setuptools pytest requests pytest-subprocess --break-system-packages && \
38+
wget https://raw.githubusercontent.com/OwnYourData/oydid/main/cli/oydid.rb -O /usr/local/bin/oydid && \
39+
chmod 755 /usr/local/bin/oydid && \
40+
mkdir -p /usr/src/app/jolt
41+
42+
COPY --chown=user:user --from=node_builder /app/dist /usr/src/app/dist
43+
COPY --chown=user:user --from=node_builder /app/res /usr/src/app/res
44+
COPY --chown=user:user --from=node_builder /app/*.json /usr/src/app/
45+
COPY --chown=user:user --from=java_builder /app/jolt/cli/target/jolt-cli-0.1.9-SNAPSHOT.jar /usr/src/app/jolt
46+
WORKDIR /usr/src/app
47+
COPY ./docker/start.sh /usr/local/bin/start.sh
48+
COPY --chown=user:user ./docker ./docker
49+
RUN npm install --only=prod && \
50+
npm run bin && \
51+
chown -R user:user /usr/src/app && \
52+
sed -e "s/\${soya}/`soya --version`/" -e "s/\${jq}/`jq --version`/" docker/welcome.txt > /etc/motd && \
53+
ln -s /usr/src/app/docker/jolt /usr/local/bin
54+
55+
USER user
56+
WORKDIR /home/user
57+
CMD ["/usr/local/bin/start.sh"]
58+

0 commit comments

Comments
 (0)