So-net無料ブログ作成
検索選択

やっぱり会社のプロキシはSSHどころか、aptぐらいしか使えない。けど何とかした。 [Linux]

http_proxy、https_proxyを設定しても、LXDとかでイメージをダウンロードできなかったりで、まともに使えない。前のところはプロキシを設定すればいろいろできたのだが、ガチで技術者の会社に来ると詰めて設定されているので隙がない。相手は自分よりも上の技術者だろうから困るなw。


まずはじめから行こう。作りたい環境はWindows7上にUbuntuなLXCコンテナだ。要するにVirtualBoxにUbuntu16.04を入れて、その中でLXCを動かすという算段。Ubuntu16.04のISO拾ってきて、それでブートして、インストーラで会社のプロキシを設定してあげれば入れることができた。ネットワーク的には問題なさそうだ。ホストOSは入れられた。

ただインストーラで使ったプロキシは、入ったUbuntuには反映されないから、環境変数のhttp_proxy、https_proxyを入れる。いくつかのコマンドはこれを読んでくれるみたいだけど、基本aptぐらいしか使わないみたいだ。wgetとかも独自に設定してあげないといけなかったんだよな、たしか。

aptを使えるのでソフトは簡単に入れられるようになった。話が前後してしまうけど、VirtualBoxのネットワーク設定はいくつかある。

 http://changineer.info/server/virtualization/virtualbox.html#i-7

はじめはブリッジ接続でやろうと思ったんだけど、なぜかDHCPからIPがもらえなかった。そんなわけで外に出られないどころか、自分のホストからもネットワーク経由では見られなかった。まぁネットワークを設定しているのは自分じゃないのであきらめるしかないんだろう。

とりあえず、ゲストマシンが外とやり取りができて、自分のホストから別マシンとして見えればいい。はじめから外が見える設定になっていて、OSのインストールの時にネットワーク経由でファイルを取りに行っているから、そこのところは問題ない。自分のフィジカルなOSから、中の仮想化OSを見るためには、上のリンクのようにNATの状態にポートフォワーディングすればいいらしい。

ここは間違えたところも書いていて、分からなかったことが分かった。

 http://blog.pg1x.com/entry/2014/06/20/234518

自分も上で書いている人もポートフォワーディングが何なのかをはっきりとわかってなかったということで。そういやルーターでもポートフォワーディングってあるけど、本質的に同じものではない(同じハードに同居しているわけではない)ので、状況的に違うしね。確かにポートを別のものに変換するというのは変わっていないわけだけれども。まぁ同じマシン上でバッティングしないで使えればいいってだけだと思うんだけど。

とにかくポートフォワーディングの設定をVirtualBox側でやってあげれば、ホストOS側からもアクセスできる。基本SSHの22番ポートと、Webアプリ用などに80番が使えればいいわけで。他に必要なら同じように設定すればいいんだろうけど、そんなに必要になることはないと思う。

んでゲストOSからプロキシを経由してLANの外側を見れてLXCが使えればいいわけだが、lxcのコマンドが通らない。始めに書いたように、lxc関係はhttp_proxyを使っていないみたいなのだ。というか、http_proxyを使っている方が少数派なのかもしれない。日本語でググっても全然出てこないので、検索語を英語にしたらすぐに出てきた。もちろん検索先も英語サイト。まぁ実際に使うコマンドを確認できればいいだけなんだけどね。

https://www.stgraber.org/2016/03/15/lxd-2-0-installing-and-configuring-lxd-212/
lxc config set core.proxy_http http://hogehoge:3128
lxc config set core.proxy_https http://hogehoge:3128
lxc config set core.proxy_ignore_hosts image-server.local


設定はファイルに記述とかじゃなくて、コマンドで注入する。他のアプリから設定することが多い場合は、やたらバリエーションが多くなってもコマンドだと、ファイルに書き込むよりか簡単にあとくされなく設定できる。UNIXは設定をファイルにテキストで持っているというのが一般的であったが、こういう設定は自動化を徹底するなら増えてくる可能性が高い。まぁYAMLやJSONやXMLでストアすれば、人間にも機械にも読みやすい設定ファイルが作れるかもね。

とにかくLXCの設定は上のhttp://の後を該当のURLに変えればよい。日本のサイトって本当に欲しいところが出てくるのって簡単な設定だけなんだよね。それはそれで役に立っているのだけれど、ググったら自分のブログが上位に出てきてしまうと悲しくなってくるんだよね。そんなにマイナーなことをしているつもりはないのだけれど、日本人は英語のドキュメントを前にするとあきらめちゃう奴が多いので、それを簡易に翻訳するとかかみ砕いて紹介するとかしてくれる人が少ない。

Dockerの日本語ドキュメントは結構あるのにLXCってそれほど多くない。使っている人が少ないのかなぁ。やれることって大して違わない気はするし、ちょっと前までDockerがLXCの機能を間接的に使っていたりしたし。それとLXDになってできるようになったことがわからない。それはおいおいやっていくことにしましょう。

コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0