とんたんの技術メモ

注)ただのメモです。

vscode + docker + eslint + prettier の開発環境構築メモ

prettierがnode_modulesにないとエラーをはいた。

コンテナでインストールされてるnode_modulesがホスト側にマウントされてないことが原因。

macにnode入れてとか汚染したくないので他の方法を模索…

docker-composeでyarn installするのは起動遅くなって嫌だし、、、

結局コンテナ側にあるnode_modulesをホスト側にコピーすることにした。

docker-compose -f docker-compose.local.yml run --rm -v $PWD/node_modules:/app/node_modules -w /app [web] yarn install

これでホスト側にnode_modulesをコピーできるので、vscode + docker + eslint + prettierを汚染することなく使える。

あとは、vscodeワークスペースのsettings.jsonに以下を書いたら動いた。

{
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "prettier.configPath": "./node_modules/prettier",
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "eslint.format.enable": true,
  "eslint.codeAction.showDocumentation": {
    "enable": true
  }
}