概要
packer でプラグインを docker 上で動作させる際に発生しました
原因と対処方法を紹介します
環境
- Ubuntu 16.04.2
- docker 17.03.0-ce
- packer 1.1.0
原因
まず原因ですが、USER
環境変数が設定されていないのが原因です
docker コンテナの場合 USER 環境変数はデフォルトで設定されていません
これが殻の場合以下の部分でエラーになります
https://github.com/hashicorp/packer/blob/master/provisioner/ansible/provisioner.go#L146
対処方法
単純に USER を設定してあげれば OK です
Dockerfile ないのどこかで以下を追加してあげましょう
ENV USER root
これで docker コンテナ上でも packer のプラグインが使えるようになります
正直これでいいのかは何ともですがとりあえず今回のエラーを回避したい場合には使えると思います
0 件のコメント:
コメントを投稿