はまると涙目になるので一応メモ。
proxy環境下でcoreos、更にはdockerを使おうとすると、docker hub (repository)に既存のイメージー例えばredisーを取りにいくところで間違いなく失敗する。
gituhubで公開されているプログラムは、親切な人だとREADME.md
にUsage under proxyみたいな感じで対応を書いてくれるんだけど、正直あまり期待できない。外人さんたちは、あんまりproxyの下にはいないのかね。
愚痴はこれまでにしてproxyを突破する方法。
proxy回避方法
docker.serviceははじめからにcoreosに組み込まれていて、こいつの設定ファイルは以下の場所にある。
/usr/lib64/systemd/system/docker.service
## 中身 ##
Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.io
Requires=docker.socket
[Service]
Environment="TMPDIR=/var/tmp/"
ExecStartPre=/bin/mount --make-rprivate /
LimitNOFILE=1048576
LimitNPROC=1048576
# Run docker but don't have docker automatically restart
# containers. This is a job for systemd and unit files.
ExecStart=/usr/bin/docker -d -s=btrfs -r=false -H fd://
[Install]
WantedBy=multi-user.target
当然ながらproxyなんか考慮しているはずもない。ので、/etc/systemd/system/
の下にこのdocker.service
をコピーして、proxyの設定を付け加える。幸い、coreos(systemd)さんは/etc/systemd/system/
の下に同名の.serviceファイルがあると、こっちを優先してくれる模様。
さあ、[Service]の直下に以下の呪文を書き足すのです。
Environment="http_proxy=http://proxy.xxx.yyy.com:1234"
なんだかなあ…。
Written with StackEdit.
No comments:
Post a Comment