14.1 コンテナの起動

ここではDockerを例に、コンテナイメージの作成から開発環境の作成まで業務における活用方法を紹介していきます。なお、コンテナはWindowsベースのものもありますが、本書ではLinuxのイメージのみを対象とします。

14.1.1 コンテナとDocker

コンテナを一躍有名にしたのが Dockerです。その後、Docker が呼びかけを行い、コンテナは標準化されました。その標準に適合するコンテナイメージのビルドや実行ランタイムは何種類かのツールがあり、その中から選択できます。その中で、コンテナのベースとなり、Windows、Linux、macOSのどれでも同じように利用できるDockerが、開発者には人気1です。Dockerは、イメージのビルドから実行、リポジトリへの送信、取得をdockerコマンド1つで実行できます。まず、次のサイトからダウンロードしてインストールします。

Dockerをインストールすると、dockerコマンドと、デーモン(常駐プログラム)が起動します。実際にイメージを操作したり実行するのは後者のデーモンです。まずはイメージをダウンロードして、GoがインストールされたLinux環境を立ち上げてみましょう。

$ docker image pull golang:1.17-bullseye
$ docker container run --rm -it golang:1.17-bullseye bash
root@b63a6923cfa8:/go#

これだけで開発環境がととのいます。コンパイラーが利用できるようになりました。作業フォルダの内容をコンテナ内にマウントして渡すこともできるため、コードのビルドをコンテナ内で完結させることもできます。 ...