balena-supervisor/Dockerfile.rpi

54 lines
1.8 KiB
Docker

FROM resin/rpi-node:0.10.40-slim
COPY 01_nodoc /etc/dpkg/dpkg.cfg.d/
ENV DOCKER_COMPOSE_VERSION 1.7.1
ENV DOCKER_COMPOSE_SHA256 3f0b8c69c66a2daa5fbb0c127cb76ca95d7125827a9c43dd3c36f9bc2ed6e0e5
# Supervisor apt dependencies
RUN apt-get -q update \
&& apt-get install -qqy \
btrfs-tools \
ca-certificates \
curl \
iptables \
rsync \
supervisor \
--no-install-recommends \
&& curl -sLO http://resin-packages.s3.amazonaws.com/docker-compose/${DOCKER_COMPOSE_VERSION}/docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz \
&& echo $DOCKER_COMPOSE_SHA256 docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz > docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
&& sha256sum -c docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz.sha256 \
&& tar xzf docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}.tar.gz \
&& mv docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}/docker-compose-linux-armhf /usr/bin/docker-compose \
&& rm -rf docker-compose-linux-armhf-${DOCKER_COMPOSE_VERSION}* \
&& apt-get purge -qqy curl \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/
# Copy supervisord configuration files
COPY config/supervisor/ /etc/supervisor/
# Install dependencies
WORKDIR /app
COPY package.json postinstall.sh /app/
RUN apt-get -q update \
&& apt-get install -qqy g++ libsqlite3-dev make --no-install-recommends \
&& JOBS=MAX npm install --unsafe-perm --production --no-optional \
&& npm dedupe \
&& npm cache clean \
&& rm -rf /tmp/* \
&& apt-get purge -qqy g++ libsqlite3-dev make binutils \
&& apt-get clean \
&& apt-get autoremove -qqy \
&& rm -rf /var/lib/apt/lists/
# Copy source
COPY . /app/
RUN /app/node_modules/.bin/coffee -c /app/src \
&& ln -sf /app/entry.sh /start # Needed for legacy
RUN chmod +x /app/bin/gosuper
ENTRYPOINT ["/app/entry.sh"]