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 1 year has passed since last update.

Dockerのインストールから簡単なコンテナ作成まで

Last updated at Posted at 2023-07-14

はじめに

幾つかの環境に対して、実験的なことしたいので、はやり??(だいぶ遅いですが)のDockerを勉強して使いこなすまでの過程を日記的に書けたらと思います。
いろいろ躓いたところなどを残して、解決方法等を共有できたらと思います。
記事は勉強が進み次第更新していきたいです、、、

環境

OS : Windows11
メモリ : 16GB

目次

1. インストール
2. Dockerを実行してみた
3. コンテナの作り方
(new)4. Dockerfileの作成からコンテナのbuildまで('23/07/23更新)
 4-1. Dockerfileの作成
  4-1-1. Dockerfileとは
  4-1-2. Dockerfileの書式
 4-2. Dockerfileからimageの作成
 4-3. imageからcontainerの作成

更新日

1. インストール

公式サイト

インストール手順
まずは、公式サイトからインストールを行います。 インストールしたファイルを実行すると以下のような画面が立ちあがります。
image.png
このままOKでインストールが始まりす。

・Use WSL2 instead of Hyper-V(reccoomend)
(日訳) WSL2をHyper-Vの代わりに使う(推奨)
・Add shortcut to desktop
(日訳) デスクトップにショートカットを作成する

その後、なんやかんやインストールが実行されて、終了したらrestartボタンが表示されるので、押して再起動を行います。

再起動が完了したらデスクトップにDocekrのショートカットが作成されているのと
image.png
エクスプローラの左のタブの下にLinuxが追加されているはず、、

2. Dockerを実行してみた

一旦Dockerを立ち上げてみましたが、うーん どうしたらよいものか、、、
image.png

(解) wslカーネルが入っていないとどうやらダメ見たいです。
以下のページからx64 マシン用 WSL2 Linux カーネル更新プログラム パッケージをクリックしてインストール

カーネルを入れてみて立ち上げなおしたら以下のような画面になりました
image.png

3. コンテナの作り方

Docker起動時に表示されるWhat is a containerから始めたほうが効率的かもですが今回は違った方法でDockerの使い方を解読していこうと思います
コマンドから見るContainerの作り方

コマンド 説明 日本語訳
run Create and run a new container from an image 新しいコンテナをイメージから作成・実行する
build Build an image from a Dockerfile イメージをDockerfileから作成する

【コンテナ作成までの手順】
1.Dockerファイルの作成 -> 2. DockerファイルからImageの作成 -> 3. Imageファイルかcontainerを作成

4. Dockerfileの作成からコンテナのbuildまで

「3.コンテナの作り方」で解説したように、コンテナを作成するには、

  1. Dockerfileの作成
  2. Dockerfileからimageの作成
  3. imageからcontainerの作成
の手順行います。

4-1. Dockerfileの作成

参考記事
Docker日本語リファレンス>>Dockerリファレンス

4-1-1. Dockerfileとは

Dockerファイルとはコンテナを作成するために必要なイメージを自動的に作成するもの。
どのようなイメージを作成するかを記述するテキストファイル

4-1-2. Dockerfileの書式

Dockerfileは原則FROM関数から始めます。
例外としてFROM関数に必要な引数としてARG関数をFROMの前に記述できます

書式
# 命令 引数
# FROM関数:ベースとなるイメージを指定
FROM ubunts
#FROM scratch

FROM関数の引数に指定できるイメージは適切なものであればなんでもよいみたいです。
Docker Official Imagesにあるイメージを使うと簡単に始められるようです

命令 概要
FROM image構築時に元となるイメージ(親イメージ)を指定する。
引数としてscratchを指定すると親イメージを持たないベースイメージを作成することが出来る

4-2. Dockerfileからimageの作成

今回は以下のようなDockerfileを作成します
pythonを親イメージとし、コンテナ作成時にlsコマンドでファイルの一覧を出力します。

dir/Dockerfile
FROM python   
CMD ls

Dockerfileからimageを作成するにはターミナル上で以下のコマンドを入力します。

Dockerfileからimageの作成
$ docker build -t python-img . 

以下の画像のようなものが出力されるとimageの作成がうまくいっています。

imageの作成にはターミナル上で
$ docker build .
を行います。 . はカレントディレクトリのファイル情報を使用してbuildを行うという意味になります。
また、今後作成したimageを操作しやすいようにimageに -t で名前を付けます。

image.png

また、以下のコマンドを入力すると作成したimageの一覧を出力できます。

image一覧の取得
$ docker images

4-3. imageからcontainerの作成

docker imagesを入力すると一覧の中に以下のイメージがあると思います。
image.png

imageからcontainerを作成するには以下のコマンドをターミナルに入力します。

imageからcontaienrの作成
$ docker run --name python-container python-img

container作成には
$ docker run --name [containerに付ける名前] [基にするimage]の形式で入力します。

ターミナル上に以下のよう出力されるとコンテナが作成がうまくいっている。という判断でよいと思います。
image.png

おわり

Dockerのインストールから簡単なコンテナ作成までの流れをまとめてみました。
今後は、もう少し複雑な環境のコンテナの構築方法を上げていけたらと思っています。

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?