33 lines
1.2 KiB
Docker
33 lines
1.2 KiB
Docker
## Base Image
|
|
## Using the smallest container available
|
|
## https://hub.docker.com/_/node/
|
|
# 8.11.2-alpine, 8.11-alpine, 8-alpine, carbon-alpine (8/alpine/Dockerfile)
|
|
FROM node:8-alpine
|
|
LABEL MAINTAINER="leopere [at] nixc [dot] us"
|
|
|
|
## Install base packages and clone repo to src directory.
|
|
RUN apk update && apk --no-cache add git curl wget python build-base bash && \
|
|
npm update && npm i npm@latest -g && \
|
|
npm install -g node-gyp && \
|
|
adduser speech -h /app/ -s /bin/bash -D && \
|
|
chown -Rv speech /app && \
|
|
git clone https://github.com/lbryio/spee.ch.git /usr/local/src/spee.ch/ && \
|
|
cd /usr/local/src/spee.ch/ && \
|
|
npm install
|
|
|
|
RUN wget -quiet -O /usr/bin/debugpaste https://github.com/nixc-us/debugpaste-it/raw/master/bin/debugpaste_64 && \
|
|
chmod +x /usr/bin/debugpaste
|
|
|
|
## Install container support files
|
|
RUN curl -s https://raw.githubusercontent.com/leopere/docker-support/master/install | /bin/sh
|
|
COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint
|
|
COPY healthcheck.sh /usr/local/bin/healthcheck
|
|
COPY debugpaste-it.sh /usr/local/bin/debugpaste-it
|
|
|
|
|
|
HEALTHCHECK CMD healthcheck
|
|
EXPOSE 3000
|
|
USER speech
|
|
WORKDIR /app/
|
|
ENTRYPOINT ["docker-entrypoint"]
|
|
CMD ["npm", "run", "start:dev"]
|