Docker build for linux/arm and support for raspberry pi
kubek93 opened this issue · comments
Hi everyone,
Two days I'm trying do something and run verdaccio on my raspberry pi 3. I'm newbe with docker but I'm still learning and have a question.
Why if vardaccio based on node:12.16.2-alpine
which is supporting linux/arm
does not support ARM processors? Are there exists some needed packages for linux which are not compatible installed using this command:
RUN apk --no-cache add openssl ca-certificates wget && \
apk --no-cache add g++ gcc libgcc libstdc++ linux-headers make python && \
wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
wget -q https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.25-r0/glibc-2.25-r0.apk && \
apk add glibc-2.25-r0.apk
Or what is the reason of that? I don't want to waste more time for trying run in and needs your help and opinion if it is possible.
Why if vardaccio based on node:12.16.2-alpine which is supporting linux/arm does not support ARM processors?
I have no clue, I'd rather go try in a specific forum for raspberry pi, docker or node-alpine contributors. We hardly can help you with this topic. We just rely on tools, but we ignore the abstraction behind of such tooling.
Thank you for the quick response, it's clear. I just thought you know about this limitations. If I find something I will put the information here.
Thanks, unfortunately not many people play extreme sports with verdaccio, but, I'll wait for your outcome, maybe others are running in the same limitation.
does not support ARM processors
Can you clarify where it says that it does not work on arm architecture?
Are there any errors and is something not working?
I managed to make this work on my raspberry pi 4.
my docker compose:
version: "3"
services:
verdaccio:
build: .
container_name: verdaccio
network_mode: host
environment:
- VERDACCIO_PORT=4873
- VERDACCIO_PROTOCOL=http
ports:
- 4873:4873
volumes:
- ./storage:/verdaccio/storage
- ./conf:/verdaccio/conf
restart: unless-stopped
volumes:
verdaccio:
driver: local
my dockerfile:
FROM arm32v7/node:12.16.2-alpine
RUN npm install --global verdaccio
EXPOSE $VERDACCIO_PORT
CMD verdaccio --config /verdaccio/conf/config.yaml --listen $VERDACCIO_PROTOCOL://0.0.0.0:$VERDACCIO_PORT
Before running ensure to create the conf folder and the config.yaml file exists
Would you like to create a PR with your solution ? I am sure others will appreciate it 😌 ! Great !