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/armv7hf-supervisor ENV SUPERVISOR_TAG_EXTRA alpine ENV CONFIG_MOUNT_POINT /boot/config.json ENV LED_FILE /dev/null ENTRYPOINT ["/app/entry.alpine.sh"]