mirror of
https://github.com/balena-os/balena-supervisor.git
synced 2024-12-20 06:07:57 +00:00
52 lines
1.8 KiB
Docker
52 lines
1.8 KiB
Docker
FROM resin/amd64-alpine-node:0.10.44-slim
|
|
|
|
ENV DOCKER_COMPOSE_VERSION 1.7.1
|
|
ENV DOCKER_COMPOSE_SHA256 0b8184817097eb670b92cbdac6cb9f7f2e9fe384c0b1060cb9b3d1a475fcbea6
|
|
|
|
# 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-amd64-${DOCKER_COMPOSE_VERSION}.tar.gz \
|
|
&& echo "$DOCKER_COMPOSE_SHA256 docker-compose-linux-alpine-amd64-${DOCKER_COMPOSE_VERSION}.tar.gz" > docker-compose-linux-alpine-amd64-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
|
|
&& sha256sum -c docker-compose-linux-alpine-amd64-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
|
|
&& tar xzf docker-compose-linux-alpine-amd64-${DOCKER_COMPOSE_VERSION}.tar.gz \
|
|
&& mv docker-compose-linux-alpine-amd64-${DOCKER_COMPOSE_VERSION}/docker-compose-linux-alpine-amd64 /usr/bin/docker-compose \
|
|
&& rm -rf docker-compose-linux-alpine-amd64-${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/amd64-supervisor
|
|
ENV SUPERVISOR_TAG_EXTRA alpine
|
|
ENV CONFIG_MOUNT_POINT /boot/config.json
|
|
ENV LED_FILE /dev/null
|
|
|
|
ENTRYPOINT ["/app/entry.alpine.sh"]
|