cherrypick/Dockerfile
Acid Chicken (硫酸鶏) 6f979c8275 Configure CI (#3037)
* Update config.yml

* Configure CI

* Use Vesion 2.1

* Fix error

* Ensure binary builds

* Ensure misskey builds

* Store artifacts

* Ensure node-gyp builds

* Fix typo

* Fix typo

* Ensure binary builds

* Update working directory

* Cache test npm packages

* Revert "Update working directory"

* Ensure misskey builds

* Ensure node-gyp builds

* Fix missing configurations

* Configure deploy filters

* Use latest npm in Docker
2018-10-30 12:36:14 +09:00

40 lines
656 B
Docker

FROM alpine:3.8 AS base
ENV NODE_ENV=production
RUN apk add --no-cache nodejs nodejs-npm zlib
WORKDIR /misskey
COPY . ./
FROM base AS builder
RUN apk add --no-cache \
gcc \
g++ \
libc-dev \
python \
autoconf \
automake \
file \
make \
nasm \
pkgconfig \
libtool \
zlib-dev
RUN npm i -g npm@latest \
&& npm i \
&& npm i -g node-gyp \
&& node-gyp configure \
&& node-gyp build \
&& npm run build
FROM base AS runner
COPY --from=builder /misskey/built ./built
COPY --from=builder /misskey/node_modules ./node_modules
RUN apk add --no-cache tini
ENTRYPOINT ["/sbin/tini", "--"]
CMD ["npm", "start"]