2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

プロキシ下で OracleDatabase 12.2 の docker image をビルド

Posted at

またしてもプロキシで詰まったので忘れないようにメモ。
proxy環境下でdockerでoracle database 12CR2のイメージをビルドするまで。

結論(今回の原因)

環境変数 proxy をよく確認しよう。

docker-machine create --engine-env http_proxy=hogehoge」と
「docker-machine 作成後に machine 内で export http_proxy=hogehoge
似ているようで違う

環境

  • docker toolbox (Windows 10 Pro)
  • Docker version 17.03.1-ce
  • 会社のプロキシ環境下
  • docker-machine に Tera Term から ssh接続

基本的にdocker-machien 内での操作がメインになります

準備

  • 公式のデータベースイメージをダウンロード
  • 公式で配布されているdockerfileを持ってくる

ここら辺は他の方の記事読んでください。。。
(そのうちここでもちゃんと記載しますごめんなさい)

実行

$ cd /ファイルパス/docker-images-master/OracleDatabase/dockerfiles
$ sh buildDockerImage.sh -v 12.2.0.1 -e

-v はバージョン、-e はエンタープライズ

始めに容量などのチェックが行われた後、dockerfileによるbuildが始まる。
今回は -e を指定したので、dockerfiles/12.2.0.1/Dockerfile.ee を
元にbuildされる

結果

Step 7/16 : RUN chmod ug+x $INSTALL_DIR/*.sh &&     sync &&     $INSTALL_DIR/$CHECK_SPACE_FILE &&     $INSTALL_DIR/$SETUP_LINUX_FILE
 ---> Running in 97d7febe3527
Loaded plugins: ovl
http://yum.oracle.com/repo/OracleLinux/OL7/UEKR4/x86_64/repodata/repomd.xml: [Errno 14] curl#7 - "Failed connect to yum.oracle.com:80; Operation now in progress"
Trying other mirror.

まさかの繋がらないエラー。

原因

machine内で環境変数 http_proxy や https_proxy が設定されていなかった。
docker-machine create --engine-env http_proxy=hogehoge でされてると思ってた)

環境変数は echo $http_proxy とか printenv で確認。

対処

ごり押しで環境変数設定。

export http_proxy=http://proxy.hogehoge.jp:8080
export http_proxy=http://proxy.hogehoge.jp:8080

設定した後上記のシェルスクリプトをもう一度実行。

最終結果

$ docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
oracle/database     12.2.0.1-ee         e79810d7c982        About an hour ago   14.8 GB
oraclelinux         7-slim              f005b5220b05        6 weeks ago         114 MB

無事に入ってくれました!

最後

環境変数ゎ大事。

docker-machien create --engine-env http_proxy=hogehoge

で設定される環境変数は、docker のエンジンに対してのみ有効
つまりmachine内でのdockerコマンドに対してのみ適用される。
(オプションの名前が engine-env だから当然でしたね。。。)

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?