YEAR

2024年

  • 2024年8月28日
  • 2024年9月1日

Dockerとコンテナ技術 その10:Dockerfileによるカスタムイメージの作成②

今回は前回の記事に続いて、Dockerfileについてまとめていきたいと思います。 Dockerfileはカスタムイメージを定義するファイルですが、基本的に以下のような構造になっています。 大文字のコマンド [パラメータ...] 例えば、前回の記事の例で実際に記述したFROM ubuntu:20.04は、FROMという大文字のコマンドにubuntu:20.04というパラメータを指定しています。 このようなコマンドを記述していくことでカスタムイメージを作成していくのが基本となっています。

  • 2024年8月26日
  • 2024年8月28日

Dockerとコンテナ技術 その9:Dockerfileによるカスタムイメージの作成①

Dockerコンテナはレジストリから用途に合ったイメージを取得して作成する方法の他に、自分でカスタムしたイメージから作成することもできます。 実務においては、レジストリ上のイメージのみではほとんど対応できないため、自分の要件に合ったイメージを作成する必要があります。 今回は2つの記事に分けて、Dockerfileと呼ばれるイメージを定義するファイルを利用してカスタムイメージを作成する方法についてまとめていきます。 Dockerfileとは、イメージを定義する時に利用されるファイルです。

  • 2024年5月17日

Dockerとコンテナ技術 その8:ネットワーク

コンテナは一つのシステム内で、その用途ごとに分けて複数作成するのが一般的です。 例えばWebサーバーのコンテナとDBサーバーのコンテナを作成する、といった感じです。 コンテナは独立した仮想環境であるため、ネットワークで繋ぐ必要があります。 今回の記事では、コンテナの周りのネットワークについてまとめていきます。

  • 2024年5月8日
  • 2024年5月8日

Dockerとコンテナ技術 その7:データ永続化

コンテナは作成し利用した後は都度削除するのが一般的です。 しかし、コンテナを削除するとその中のデータも削除されてしまいます。 そのため、削除したくないデータがある場合はデータの永続化を行う必要があります。 Dockerではデータの永続化として2つの方法が用意されています。 ボリュームとバインドマウントです。

  • 2024年5月5日
  • 2024年5月5日

Dockerとコンテナ技術 その6:コマンド操作

コンテナの仮想環境が作成できるようになったので、次は起動しているコンテナでの操作を実行できるようにしていきます。 今回はコマンド実行による操作方法をいくつかまとめていきます。 コンテナとホストOSの間でのファイルのやり取り ・docker compose cpコマンドを利用する。 ・ホストOSとコンテナ内のそれぞれのファイルパスを指定してコピーを行う。 コンテナ上でコマンド実行 ・docker compose exec [コンテナ名] [実行コマンド]でコマンドを単発で実行できる。 ・docker compose exec -it [コンテナ名] [立ち上げるシェル]でコンテナ上のシェルを立ち上げることができる。

  • 2024年5月2日
  • 2024年5月2日

Dockerとコンテナ技術 その5:Docker Composeファイル

Docker Composeで利用するキーや階層構造の主な記述方法についてまとめていきます。 Docker Composeで利用するcompose.yamlファイル内では、最上位で操作対象の指定をします。 これはコマンドで言うところの、dockerの後に指定するcontainerやnetworkなどの部分に近いイメージです。

  • 2024年4月19日
  • 2024年4月19日

Dockerとコンテナ技術 その4:Docker Composeで複数のコンテナ操作

Docker Composeとは、一度に複数のコンテナを作成・実行できるソフトウェアのことです。 Docker内に同梱されており、Dockerをインストールしていればそのまま利用することができます。 Docker ComposeではYAML形式の設定ファイルに詳細なオプションを記述し、それを基にコンテナの作成・実行を行います。 この設定ファイルには複数コンテナの作成やネットワークなどのコンテナの動作に必要な機能を記述することができるため、複雑な設定や構成も管理することができ、開発環境の統一やテストなどをより簡単に行うことができます。 Docker Composeはdocker composeコマンドを使って操作していきます。

  • 2024年4月15日
  • 2024年4月15日

Dockerとコンテナ技術 その3:Dockerとdockerコマンドでコンテナを作成してみた

Dockerとは、コンテナ仮想化技術のディファクトスタンダードとなっているコンテナ管理ツールです。 もはやコンテナ=Dockerといっても過言ではないくらいですね。 DockerはCLIによるコマンド操作やDocker desktopと言うGUIを用いた操作によってコンテナを扱うことができます。 desktopは直感的に分かりやすい操作が可能ですが、詳細な設定などはできないためコマンドでの操作も必要となってきます。 また、DockerにはDocker Hubと言う公式のレジストリがあり、多くのコンテナイメージが既に利用可能な状態になっているため、コンテナの利用を簡単に始めることができます。

  • 2024年4月11日
  • 2024年4月11日

Dockerとコンテナ技術 その2:コンテナイメージとは?

今回はコンテナの高いポータビリティを実現するコンテナイメージとは何かをまとめていきたいと思います。 技術的なことや実践的な部分には触れず概念的な部分の説明が主になります。 実際に動かしたいんだよーという人は別のサイトへ行きましょう。 コンテナイメージとはコンテナを作る基となる基本的なアプリやソフトウェア、動作に必要なファイルシステム、実行コマンド、メタ情報を含んだ、コンテナの鋳型のようなものです。 一つのコンテナイメージを基にして作成したコンテナは同じ設定のコンテナとなるため、一つの物理マシンに複数の同じコンテナを作成することや、コンテナイメージを配布して複数人のそれぞれの環境に同じコンテナを構築することができます。

  • 2024年4月9日
  • 2024年4月9日

Dockerとコンテナ技術 その1:そもそもコンテナとは?

Dockerの基礎から学んだことを備忘録として記事にまとめていきます。 初回である今回はコンテナとはそもそも何なのかという超基礎的なことをテーマにまとめていきたいと思います。 コンテナは、アプリケーションを実行するための軽量な仮想化技術です。 従来の仮想マシン(VM)技術と比較して、コンテナはオペレーティングシステム(OS)のカーネルを共有し、アプリケーションとその依存関係をコンテナ内にパッケージ化します。 これにより、アプリケーションはどの環境でも一貫して実行することが可能になります。 Dockerはコンテナを構築するツールのディファクトスタンダードとなっているツールであり、AWSやAzureなどのクラウドサービスでも利用できるツールとなっています。