5
5

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.

Docker hubについて理解したこと

Last updated at Posted at 2019-01-21

背景

  • 先日Jshellの記事を書いた
  • その前にはJavaのバージョンテストの記事も書いた
  • バージョンの取得をなんとなくできていたものの、ちゃんと理解せずにdocker imageを取得していたので、備忘録的に理解したことをアウトプットしておく

用意したもの

  • terminal
  • Google Chrome

まずはじめにDocker hubとは?

  • https://hub.docker.com/
  • クラウド上にDockerコンテナ公開されているオープンソースのサービス(日本語あってます?)

もう少しわかりやすく言うと

  • 無料で使える
  • Dockerのイメージ(例えばJavaとかKotlinとか)が置いてあって、それを指定して取得してあげることで、ローカルとかCI環境で環境構築を可能にしてくれるやつ(違ったらすみません)

で、本題

  • 先日の記事で・・・
docker run -it openjdk:11 jshell

と書きましたが、、、"openjdk:11"ってなによ?って思ったわけです。(わからないまま記事にしてごめんなさい)

結論

  • 知らないうちにDockerhubにおけるリポジトリとタグを指定してました(笑)

  • ちゃんと説明すると・・・

  • こんな感じで検索をして・・・
    image.png

  • 引っかかると・・・
    image.png

  • こんな感じでタグが出てきます!

image.png

  • 要するに最初の検索で引っかかったやつ(これがリポジトリで)次にたくさん出てきたやつ(これがタグ(カンマ区切りのやつなら、どれを指定しても問題ないみたい))をdockerコマンドにうまい具合に渡せてあげていたおかげで実行できていたらしいです。

今度は・・・

  • ここまでで、なんとなくリポジトリとタグの指定の仕方はわかったのですが新たな疑問が生じました

なんでこんなにタグがあるんだろう?

  • すごい疑問でした
  • なんなら、Java11を使うのにどれを選べば良いのか決め手に欠いていました

結論

  • 微妙にimageの中身が違う!!!

試しにこの2つを比較してみました

image.png

すると・・・

  • (11/jdk/Dockerfile)の方だけUTF-8追加してくれてる!!
    image.png

きっかけ

  • これがわかったのは、最初に上の方のやつ(oracleの方)を指定していたのですが、日本語を渡したときに文字化けしてしまってどうしようかなーと対処法を調べてたときに、ちゃんとリポジトリの中までみたことで原因と代替案が見つかった次第です

まとめ

  • 普段コーディングしてばかりで、こういうところの理解を疎かにしていたことを痛感した
  • 気になったこと(なんで動いているんだろう?とか)をちゃんと気にすることで意外な発見ができる!

参考リンク

5
5
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
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?