fluentdのDockerfileの書き方がちょっと変わってた
ubuntuが16.04になってた
これが一番大きな原因。 ubuntu 16.04が2016/4にリリースされてて、今Dockerhubのubuntuのlatestは16.04になってる。ちなみに、コードネームは「Xenial Xerus(ジーニアル ジリス)」で『おもてなしのアラゲジリス』
https://hub.docker.com/_/ubuntu/
install.shが変更
- ubuntu 16.04 xenial用のものが出てる
- httpsになってる
http://docs.fluentd.org/articles/install-by-deb#step-1--install-from-apt-repository
- http://toolbelt.treasuredata.com/sh/install-ubuntu-trusty-td-agent2.sh + https://toolbelt.treasuredata.com/sh/install-ubuntu-xenial-td-agent2.sh
libssl0.9.8じゃダメ libssl1.0.0
こういうエラーが出る。
E: Package 'libssl0.9.8' has no installation candidate
- apt-get libssl0.9.8 + apt-get libssl1.0.0
sudoのinstallが必要
You will be prompted for your password by sudo. 100 563 100 563 0 0 1497 0 --:--:-- --:--:-- --:--:-- 1501 sh: 5: sudo: not found sh: 8: sudo: not found The command '/bin/sh -c curl -L http://toolbelt.treasuredata.com/sh/install-ubuntu-trusty-td-agent2.sh | sh && mkdir -p /var/log/td-agent' returned a non-zero code: 127 make: *** [build] Error 127
insatall.shでsudoやってるけど、ubuntu 16.04には最初からsudoが入ってないらしくそこで怒られる。なので、apt-getでsudoもインストール。
+ apt-get sudo
余談
W: --force-yes is deprecated, use one of the options starting with --allow instead.
apt-getの際のオプションの--force-yesがdepricatedになったらしく、--alow-xxx
を使えとwarningが出る。細かく指定してねってことらしい。今回は無視した。
--force-yes Force yes; this is a dangerous option that will cause apt to continue without prompting if it is doing something potentially harmful. It should not be used except in very special situations. Using force-yes can potentially destroy your system! Configuration Item: APT::Get::force-yes. This is deprecated and replaced by --allow-downgrades, --allow-remove-essential, --allow-change-held-packages in 1.1.