Skip to content

Node.js image on Alpine 3.16 doesn't work since 18.6.0 update #1749

Closed
@KMatuszak

Description

@KMatuszak

Environment

  • Platform: Ubuntu 20.04.4 LTS x86_64
  • Docker Version: Docker version 20.10.17, build 100c701
  • Node.js Version: 18.6.0
  • Image Tag: 18.6.0-alpine3.16

Expected Behavior

App should start normally, as it was on 18.5.0-alpine3.16.

Current Behavior

Container is restarting with this output:

npm ERR! code EROFS
npm ERR! syscall open
npm ERR! path /tmp/start65788697724.sh
npm ERR! errno -30
npm ERR! rofs EROFS: read-only file system, open '/tmp/start65788697724.sh'
npm ERR! rofs Often virtualized file systems, or other file systems
npm ERR! rofs that don't support symlinks, give this error.

npm ERR! Log files were not written due to an error writing to the directory: /root/.npm/_logs
npm ERR! You can rerun the command with `--loglevel=verbose` to see the logs in your terminal

When I start it without --read-only flag, the same happens, but it says only sh: /tmp/start6578863454.sh: Permission denied.

Steps to Reproduce

  • Build container using simple Dockerfile:
FROM node:18.6.0-alpine3.16
WORKDIR /app
COPY . .
RUN ["npm", "i"]
ENTRYPOINT ["npm", "start"] # Same happens with CMD
  • Start it:
docker run --name app --read-only --restart unless-stopped -d image
# or without read-only
docker run --name app --restart unless-stopped -d image
  • See the logs:
docker logs app

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions