0
0

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 3 years have passed since last update.

dockerまずなにしたらいいの?(なんとなくshellはわかるが…ってレベルの初学者向け)

Last updated at Posted at 2021-01-04

・ことの発端

当方、情シスやってます(2年目のペーペー)。 pythonによるテキスト解析を行ったところ、 pipやらcondaやらでのライブラリインストールしすぎによるよく分からん不具合に見舞われまくった。 元々ML界隈の情報収集は積極的に行っておりdockerという単語をちょくちょく見ていたが、 ここでようやくコンテナを活用することの重要性を理解する。

・結論

よくわからなくても取り合えず先にコンテナの技術を学ぼう

・コンテナとは?

ざっくりとPCの中にPCを起動するイメージです(仮想化とジャンルとしては一緒)。 幼いころ:「PCの中にPC立てたらファイルとかどこにあるかわからなくなるやろ・・・」 今:「わけわからんことして悪影響でてもすぐ切り捨てられるようにしたい」

というわけで、
コンテナ使う=皿洗うのが面倒な人が皿にラップをひいて食べ終わったら捨てるのと同じ感じですね。
それ以外にもホストOSをそのまま使える(仮想化技術との違い)など、
色々とメリットはあるみたいですが、仮想化全盛期の時代を知らないので、
正直どうよくなってるのかはわかりません(爆)。

で、そもそもどういう時代背景で仮想化・コンテナ化が活用されるようになっているのかというところですが、
ユーザー間の開発環境の差を均一化するためにできたものとされています。

ここでようやくことの発端に戻るのですが、pythonもバージョンによって
使えるライブラリ(=excel関数のようなもの)が異なるようなのです。
個人で使うPCを自分用にカスタマイズしてあるのは当然ですが、
他人と共有する場合や、開発環境⇒本番環境への移行など、を踏まえるとマストなわけです。
近年のゲームで例えるならばPS4,PS5で同じセーブデータを使ってゲームするようなものですね。
これはありがたい。

当初はチーム間でのシステムテストのためだけに役立つのだからバリバリコードを書く立場ではない情シスには
必要のないものだと思っていました。しかし、上に記載した通り、自分だけの場合でも役に立つものですね。
サーバー側のCI/CDみたいな概念ですかね(適当言ってたらすみません)。

・で、何をハンズオンすればいいの

とりあえず⇓に従って、dockerコンテナの起動・停止を学びましょう。 https://tech-lab.sios.jp/archives/19073

個人的にハマったポイントとしては、
・imageとrunは違う。imageはデスクトップにあるだけ。runはソフトを立ち上げている状態。
・sudoは実行できなかった。管理者アカウントではないからだからと想定。
・imageIDとコンテナIDは異なるので混同しないように。

・終わりに

こんなところです。 あまり大した量進んでないので相当初学者向けのペースですが、 継続的にアウトプットする目的でやってきますのでコメントとか自由に投げてください。
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?