diff --git a/Dockerfile.armel b/Dockerfile.armel new file mode 100644 index 00000000..e68e1190 --- /dev/null +++ b/Dockerfile.armel @@ -0,0 +1,41 @@ +FROM resin/armel-node:0.10.40-slim + +COPY 01_nodoc /etc/dpkg/dpkg.cfg.d/ + +# Supervisor apt dependencies +RUN apt-get -q update \ + && apt-get install -qqy socat supervisor --no-install-recommends \ + && 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 chmod +x /app/src/enterContainer.sh \ + && /app/node_modules/.bin/coffee -c /app/src \ + && ln -sf /app/entry.sh /start # Needed for legacy + +RUN chmod +x /app/bin/gosuper + +ENV SUPERVISOR_IMAGE resin/armel-supervisor +ENV CONFIG_MOUNT_POINT /boot/config.json +ENV LED_FILE /dev/null + +ENTRYPOINT ["/app/entry.sh"] diff --git a/Makefile b/Makefile index 737fb9b7..99e0c887 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ DISABLE_CACHE = 'false' -ARCH = rpi# rpi/amd64/i386/armv7hf +ARCH = rpi# rpi/amd64/i386/armv7hf/armel DEPLOY_REGISTRY = @@ -22,6 +22,9 @@ endif ifeq ($(ARCH),armv7hf) GOARCH = arm endif +ifeq ($(ARCH),armel) + GOARCH = arm +endif ifeq ($(ARCH),i386) GOARCH = 386 endif diff --git a/gosuper/Dockerfile b/gosuper/Dockerfile index 7fbe55db..5c034a92 100644 --- a/gosuper/Dockerfile +++ b/gosuper/Dockerfile @@ -2,6 +2,8 @@ FROM golang:1.5.1 ENV GOOS linux ENV GOPATH /usr/src/app +# Set an explicit GOARM of 5 for maximum compatibility +ENV GOARM 5 WORKDIR /usr/src/app