電気ひつじ牧場

技術メモと日常のあれこれ

CircleCIでyarn installした時に出る"EPERM: operation not permitted, copyfile ~"みたいなエラー

CircleCIでnodeアプリケーションのイメージをビルドしている時にエラーが出てfailした時の対処法メモ

エラー内容

Dockerfile中のyarn installのステップで次の様なエラーを吐いて落ちた。

error An unexpected error occurred: "EPERM: operation not permitted, copyfile '/usr/local/share/.cache/yarn/v6/npm-@babel-code-frame-7.10.4-168da1a36e90da68ae8d49c0f1b48c7c6249213a-integrity/node_modules/@babel/code-frame/LICENSE' -> '/app/node_modules/@babel/code-frame/LICENSE'".

権限がどうこう言ってる。ローカルだとビルドが成功するので、環境の差異によるものだと思われる。

解決策

.circleci/config.ymlで利用するdockerのバージョンを指定する。ドキュメントにある通りバージョンを指定しないとdockerの17.09が使われてしまうようで、これだとnodeのビルドに失敗する。

- setup_remote_docker:
          version: 19.03.13

参考

support.circleci.com