エラーの内容
$ docker-compose build app Building app ERROR: Error processing tar file(exit status 1): unexpected EOF
これを試しても直らなかった。
ただどうやら、ワークディレクトリにパーミッションが変なファイルがあると発生するみたい。
こんな感じでマウントしていたので、
db: image: mysql:5.7 volumes: - ./etc/docker/mysql/data:/var/lib/mysql - ./etc/docker/mysql/conf.d:/etc/mysql/conf.d
解決方法
以下のように権限を書き換えて、解決。
% sudo chown -R `whoami` etc/docker/mysql/
そういえば、Linuxのdockerって権限周りが変になるんだよなぁ。。。以前、Cloud9で試したときにそうだった。
追記
- 再発した。
- dockerの再起動、/var/lib/dockerの削除、OSの再起動などを試しても駄目だった。
-
Ubuntu 18.04.1 LTS
-
こんなエラーも出たのだが、
- dockerグループにユーザを追加しても駄目。
- sudo使えば利用可能。
- 仕方が無いので、Ubuntu 18を使うことを諦める。
$ docker-compose build ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
- Amazon Linux 2を使ったら全く問題無かった。
amzn-ami-hvm-2018.03.0.20180811-x86_64-gp2
- 相変わらず、dockerでマウントしてwriteしたファイルはroot権限になってしまっているが。(まぁ、これは、dockerのvolumeを使うようにして回避しよう)
Comments