/
Dockerfile
29 lines (21 loc) · 1.02 KB
/
Dockerfile
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
FROM node:18-alpine
WORKDIR /home/node/airbyte
COPY lerna.json .tsconfig.json package.json package-lock.json ./
RUN sed -i "/jest\|mockttp/d" package.json
COPY ./destinations ./destinations
RUN apk add --no-cache --virtual .gyp python3 make g++ \
&& npm install -g npm lerna @lerna/legacy-package-management tsc
RUN lerna bootstrap --hoist
ARG version
RUN test -n "$version" || (echo "'version' argument is not set, e.g --build-arg version=x.y.z" && false)
ENV CONNECTOR_VERSION $version
RUN cp package-lock.json .package-lock.json.tmp \
&& lerna version $CONNECTOR_VERSION -y --no-git-tag-version --no-push --ignore-scripts --exact \
&& mv .package-lock.json.tmp package-lock.json
RUN apk del .gyp
ARG path
RUN test -n "$path" || (echo "'path' argument is not set, e.g --build-arg path=destinations/example-destination" && false)
ENV CONNECTOR_PATH $path
RUN ln -s "/home/node/airbyte/$CONNECTOR_PATH/bin/main" "/home/node/airbyte/main"
ENV AIRBYTE_ENTRYPOINT "/home/node/airbyte/main"
ENTRYPOINT ["/home/node/airbyte/main"]