runejs / server

RuneJS is a RuneScape game server written in TypeScript and JavaScript. The goal of the project is to create a comprehensive game engine, while also providing simple and easy to use content development systems and APIs.
GNU General Public License v3.0
238 stars 82 forks source link

[BUG] `docker compose build` failure on arm64 #396

Open ATLowther opened 1 year ago

ATLowther commented 1 year ago

Describe the bug The docker image will not build due to node-canvas issue

To Reproduce Steps to reproduce the behavior:

  1. Run docker compose build on a machine with arm64 arch.

Expected behavior I expected the image to build.

Screenshots

image

Additional context A prebuilt for Node18 is does not exist for arm64. The resolution is to install the underlying dependencies, as documented by the maintainers: https://github.com/Automattic/node-canvas/wiki/Installation%3A-Ubuntu-and-other-Debian-based-systems

I can submit a PR for the updated Dockerfile if desired.

Jameskmonger commented 1 year ago

I tried to remove the node-canvas dependency in this PR https://github.com/runejs/server/pull/389

Can you try to track down why it's still being installed in your Dockerfile?

ATLowther commented 1 year ago

I tried to remove the node-canvas dependency in this PR #389

Can you try to track down why it's still being installed in your Dockerfile?

Sure:

@runejs/update-server requires @runejs/filestore requires canvas.