🏌️♂️
Laravel9 Sail Dockerイメージを構築する際のNodeのバージョンを変更する方法
sail build --no-cache
でSailのDockerイメージを再構築しようとした際にDockerfileに記載のNodeのバージョンがサポートされておらず、構築に少し時間がかかったため記事に残します
環境
技術 | バージョン |
---|---|
Sail | 1.26 |
PHP | 8.1.25 |
Laravel | 9.40.1 |
エラー内容
7 215.9 npm ERR! code EBADENGINE
#7 215.9 npm ERR! engine Unsupported engine
#7 215.9 npm ERR! engine Not compatible with your version of node/npm: npm@10.2.3
#7 215.9 npm ERR! notsup Not compatible with your version of node/npm: npm@10.2.3
#7 215.9 npm ERR! notsup Required: {"node":"^18.17.0 || >=20.5.0"}
#7 215.9 npm ERR! notsup Actual: {"npm":"8.19.4","node":"v16.20.2"}
npm10ではNode.js 18.17.0以上か、20.5.0以上をサポートしている模様
前はすんなり通った気がするのでいつの間にかnpmのバージョンが上がっていた・・?
実際にNodeのバージョンを変更するには使用しているPHPバージョンのDockerfileを見にいき
今回だとdocker/8.1/Dockerfile
上の方にある
ARG NODE_VERSION=16
を
ARG NODE_VERSION=18
に変更すればOK
参照
Discussion