MacでDockerでUbuntu環境を構築する
IT技術
Docker(ドッカー)とは
多くのエンジニアは、環境構築に時間を費やしています。
そのような状況の中で、Dockerが近年存在感を増しています。
Dockerは、コンテナ型のアプリケーションの一種であり、プログラムを実行する全ての情報を含めることができます。
また、ユーザーは、ハードドライブに全てのデータを広げることをせず、最小限のメモリを使うことでコンピュータ全体の速度が落ちるのを避けることが可能になります。
Dockerの仕組み
Dockerは、Dockerがインストールされているコンピュータの全てでプログラムが問題なく実行されることを保障します。
実際、エンジニアが使うコンピュータは、WindowsやMac、Linuxなど様々な種類のOSが存在します。
これまでは、PrallelsやVMwreFusionなどでMac上に仮想Windowsを用意してプログラムを実行するなどの必要がありましたが、Dockerはそのような労力を減らします。
Dockerにより、複数人による開発が容易になり、アプリケーションのオペレーションからQA(品質保証)まで通しで行うことができます。
Dockerの構造
Dockerの構造は、以下の図のようになります。
Clientからコマンドを入力することによって、Docker daemonに指令が与えられ、イメージを介して各コンテナにアクセスすることができます。
イメージで必要なものがあれば、Docker registriesから探してインストールします。
Dockerのインストール方法
Macでのインストール方法を紹介します。
まずは、Dockerの公式ページより、デスクトップDockerをインストールします。
少なくとも4GB以上のメモリが必要です。
Dockerアカウントを作成
インストールの際には、Dockerアカウントを作成する必要があります。(無料)
まずは、Eメールとパスワードを登録します。
インストール後に、Dockerを開くとDockerIDとパスワードを入力するように要求されます。
メニュー上でどのくらいのCPUとメモリが使うことができるのか確認することができるようになります。
Kitematic(カイトマティック)をインストール
次に、Kitematicというアプリをインストールします。
このアプリは、Dockerコンテナのインストール・管理・削除などをシンプルな画面で行うことができます。
ターミナルの扱いに慣れていない人は、インストールしておくべきでしょう。
Kitematicから新たなコンテナのインストールができます。
アプリが動作すれば、ログファイルなども確認することも可能です。
Dockerを触ってみよう
インストールされたか確認
Dockerが正常にインストールされたことを確認するために、以下のコマンドを実行してみてください。
1docker version
以下のような情報が表示されれば、インストールが完了しています。
セットアップが終わったので、Dockerを実際に使ってみましょう。
Dockerを使う
それでは、busyboxコンテナを実行してみます。
まず、docker pullというコマンドでbusyboxのイメージをpullします。
1docker pull busybox
そうすると、以下のような画面となります。
しっかりとイメージを取り出したかどうか確認するために以下のコマンドを打ちます。
1docker images
REPOSITORYとIDが確認できます。
次に、このアプリbusyboxを実行してみます。
1docker run busybox
…何も起こりません(笑)
何も起こっていないはずはなく、実際には、Docker内で必要なイメージを探しコマンドを実行しています。
次に、以下を入力。
1docker run busybox echo "Hello from busybox"
実際にechoコマンドが実行された結果が表示されます。
これまでの履歴はdocker ps -a で確認できます。
使ったコンテナを削除するには、以下コマンド。
1docker rm CONTAINER ID
最後にインストールしたイメージを削除してみたいと思います。
1docker images
上記コマンドで REPOSITORY名 を確認して、
1docker rmi REPOSITORY名
で削除完了です。
Ubuntu環境の構築
実際に、Ubuntu環境をDockerを使って構築してみましょう。
イメージをpullする
1docker pull hello-world
自動的に必要なライブラリなどがインストールされます。
イメージを実行する
イメージを実行してみます。
1docker run hello-world
以下のようなメッセージが表示されます。
どのようにDockerが動いているのか、の説明が英語でされています。
コンテナを実行する
では、コンテナを実行して、Ubuntu環境を使ってみましょう。
1docker run -it ubuntu bash
-it はUbuntuのための擬似端末の用意をするオプションです。
そうするとUbuntu環境がDockerから用意され、アクセスすることが可能になります。
やめる場合はexit と打ちます。
コンテナとイメージの削除は、前述の通り
1docker rm ID
2docker rmi name
で完了します。
さいごに
Dockerを使うことで非常に簡単に環境構築できたことがわかります。
実際のアプリケーション開発では、Dockerのコンテナを使うことで開発スピードを上げることができるでしょう。
こちらの記事もオススメ!
2020.07.17ライトコード的「やってみた!」シリーズ「やってみた!」を集めました!(株)ライトコードが今まで作ってきた「やってみた!」記事を集めてみました!※作成日が新し...
2020.07.27IT・コンピューターの歴史特集IT・コンピューターの歴史をまとめていきたいと思います!弊社ブログにある記事のみで構成しているため、まだ「未完成状態」...
2020.08.04エンジニアの働き方 特集社員としての働き方社員としてのエンジニアの働き方とは?ライトコードのエンジニアはどんな働き方をしてるのか、まとめたいと...
ライトコードでは、エンジニアを積極採用中!
ライトコードでは、エンジニアを積極採用しています!社長と一杯しながらお話しする機会もご用意しております。そのほかカジュアル面談等もございますので、くわしくは採用情報をご確認ください。
採用情報へ
「好きを仕事にするエンジニア集団」の(株)ライトコードです! ライトコードは、福岡、東京、大阪、名古屋の4拠点で事業展開するIT企業です。 現在は、国内を代表する大手IT企業を取引先にもち、ITシステムの受託事業が中心。 いずれも直取引で、月間PV数1億を超えるWebサービスのシステム開発・運営、インフラの構築・運用に携わっています。 システム開発依頼・お見積もり大歓迎! また、現在「WEBエンジニア」「モバイルエンジニア」「営業」「WEBデザイナー」を積極採用中です! インターンや新卒採用も行っております。 以下よりご応募をお待ちしております! https://rightcode.co.jp/recruit