やること
Dockerを使ってRubyの実行環境を簡単に作成します。本当に最小限です。
前置き
Dockerを使ってRubyの最小限の実行環境を簡単に作成します。
作者ははappleシリコンチップ内蔵のmacPCを使ってます
Dockerについては本当に初心者で必要最低限のコマンドでRubyの環境を構築しました。
VirtualBoxのような他の仮想マシンみたくローカル環境に影響を与えずにLinuxで色々試すのが目的です。
Docker自体のインストールの仕方は省略します。私はDocker for Macを使ってます。
Dockerが何かについてはおいおい書くかもしれないです...。1ことで言うとコンテナ型の仮想環境を構築するツールです。
結論から書きます
mkdir /Users/ユーザー名/Desktop/ruby/
docker run -it -d --name my_ruby -v /Users/ユーザー名/Desktop/ruby/:/home/ユーザー名/ruby/ ruby:3.2.2
docker exec -it my_ruby /bin/bash
この3つのコマンドだけです。ユーザー名は適宜書き換えをお願いします。やってることは
- 前もってDesktopにの直下にrubyディレクトリを作る
- rubyのコンテナを起動する
- シェルを指定してコンテナを操作する
以下ではより具体的に解説していきます。
とりあえずdockerが動いている確認する
docker -v
まずは2行目を解説します。runはイメージをダウンロードしてコンテナを作成して起動する命令です。要するに自動でコンテナを作成してくれます。containerは省略できます。簡単な例
docker container run <動かしたいコンテナの名前>
次にオプションの解説です。
- -itはコンテナにキーボードを繋いで特殊キーを使用可能にします。特殊キーが何かは自分もよく分かってないです。
- -dはコンテナをバックグラウンドで実行します。
- --nameはコンテナに名前をつけます。これがないと適当な名前をDockerが付けてくれます。
- -vはボリュームをマウントします。つまりコンテナとホストでディレクトリを共有します。コンテナは停止すると全てのデータが消えるので消えて欲しくないデータはマウントしたディレクトリに保存します。今回の場合はホストOS上で作成したRubyファイルをrubyディレクトリに入れることでコンテナ内で実行できます。
続いて3行目です。
シェルを指定してコンテナの中に入って操作するコマンドです。containerは省略できます。
doker container exec <コンテナ名> /bin/bash
最後にコンテナに入ってRubyが使えることを確認します
ruby -v
以上となります。
参考文献は仕組みと使い方がわかる Docker&Kubernetesのきほんのきほん