balena-supervisor/Dockerfile.alpine.rpi
2016-06-27 17:01:23 +00:00

52 lines
1.8 KiB
Docker

FROM resin/armhf-alpine-node:0.10.44-slim
ENV DOCKER_COMPOSE_VERSION 1.7.1
ENV DOCKER_COMPOSE_SHA256 3e5d0a36f06d9f7a93eb20c1dee67da623b07a322168538ea80d65c8581f5567
# Supervisor apt dependencies
RUN apk add --update \
btrfs-progs \
ca-certificates \
curl \
rsync \
supervisor \
&& curl -sLO http://resin-packages.s3.amazonaws.com/docker-compose/${DOCKER_COMPOSE_VERSION}/docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz \
&& echo "$DOCKER_COMPOSE_SHA256 docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz" > docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
&& sha256sum -c docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
&& tar xzf docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz \
&& mv docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}/docker-compose-linux-alpine-armhf /usr/bin/docker-compose \
&& rm -rf docker-compose-linux-alpine-armhf-${DOCKER_COMPOSE_VERSION}* \
&& apk del curl \
&& rm -rf /var/cache/apk/*
# Copy supervisord configuration files
COPY config/supervisor/ /etc/supervisor/
# Install dependencies
WORKDIR /app
COPY package.json postinstall.sh /app/
RUN set -x \
&& buildDeps='g++ sqlite-dev sqlite-libs make' \
&& apk add --update $buildDeps \
&& JOBS=MAX npm install --unsafe-perm --production --no-optional --build-from-source \
&& npm dedupe \
&& npm cache clean \
&& rm -rf /tmp/* \
&& apk del $buildDeps \
&& rm -rf /var/cache/apk/*
# Copy source
COPY . /app/
RUN /app/node_modules/.bin/coffee -c /app/src \
&& ln -sf /app/entry.alpine.sh /start # Needed for legacy
RUN chmod +x /app/bin/gosuper
ENV SUPERVISOR_IMAGE resin/rpi-supervisor
ENV SUPERVISOR_TAG_EXTRA alpine
ENV CONFIG_MOUNT_POINT /boot/config.json
ENV LED_FILE /dev/null
ENTRYPOINT ["/app/entry.alpine.sh"]