Docker上でPython開発環境を構築する

Docker上でPython開発環境を構築するDocker
ゆうすけ
ゆうすけ

Docker上でPythonを開発するための環境を作りたいです・・・

資格マフィア
資格マフィア

比較的簡単に作成できるぞ。構築手順とともに解説しよう。


✔️ 本記事のテーマ

Docker上でPython開発環境を構築する方法


✔️ 読者さんへの前置きメッセージ

本記事は「Docker上でPythonの開発環境を構築する方法」について書いています。

 

この記事を読むことで「Docker上でPythonを使う方法から、コンテナ上にPython開発環境を構築するまで」をイメージできるようになります。

 

Dockerとは、Docker社によって開発されたコンテナ仮想化ツールです。

 

Dockerでは、コンテナという新しい仮想化概念によってインフラ環境を構築することができます。

 

そのコンテナ上にPython開発環境を構築することで、OSやPCの違いを意識することなく、同じ環境でPython開発を行うことができます。

 

その手順やメリットを解説していきます。

 

Docker上にPython開発環境を構築する方法

Docker上にPython開発環境を構築する方法

Dockerは非常に手軽に使えるツールです。

 

Python開発環境程度なら割とすぐに構築できます。

 

具体的には、以下の手順でPython開発環境を構築します。

  1. Dockerをインストールする
  2. Dockerのイメージをダウンロードする
  3. aptをアップデートする
  4. Pythonとpipをインストールする
  5. エディタを入れる

手順を詳しく解説していきましょう。

Dockerをインストールする

Dockerはインストールも簡単です。

 

WindowsでもMacでも数ステップで完了します。

 

なお、詳しいインストール方法は
Dockerのインストール方法【Windows版】【Mac版】」の記事で紹介しています。

Dockerのイメージをダウンロードする

まず、Dockerのイメージをダウンロードしてきましょう。

 

今回は「Ubuntu 18.04」を使います。

 

以下のコマンドでDocker imageをダウンロードすることができます。

$ docker pull ubuntu:18.04

 

イメージを落としてきたら、そのイメージを使ってコンテナを起動させましょう。

 

以下のコマンドを実行すると、
Ubuntu Imageからコンテナを起動し、そのコンテナの中に入ることができます。

$ docker run -it --name my-ubuntu ubuntu:18.04 /bin/bash

 

これで起動したコンテナの中に入ることに成功しました。
以降、コンテナの中で作業を行なっていきます。

aptをアップデートする

ダウンロードしてきたUbuntu Imageは全くの初期状態なので、
そのままでは使うことができません。

 

以下のコマンドでaptを最新化しておきましょう。

 

aptはOSソフトウェアをインストールするためのツールです。

apt update
apt upgrade

 

この作業をすることで、
OSソフトウェアをインストールして自分好みの環境にすることができます。

Pythonとpipをインストールする

起動したコンテナにPythonとpipをインストールします。

 

Pipとは、Pythonライブラリを管理するためのツールです。

 

以下のコマンドで、インストールすることができます。

apt install python3
apt install python3-pip --fix-missing

エディタを入れる

ここまでで、Pythonが実行するための環境が整いました。

 

次は、エディタを入れていきましょう。

 

今回は最もシンプルなエディタ、vimを入れていきます。

 

以下のコマンドでvimをインストールしましょう。

apt install vim

 

もちろんもっと高機能なエディタやIDEを入れることもできます。
その場合は、コンテナの画面出力をホストPCと紐付けるなどの設定も実施しましょう。

 

Docker上にPython開発環境を構築するメリット

Dockerコンテナを使うメリット

Docker上にPython開発環境を構築するメリットは大きく3つです。

 

他にもたくさんのメリットがありますが、特筆すべきはこの3つでしょう。

移植が圧倒的に楽
環境構築のやり直しが出来る
不要なものを入れなくて良い

一つずつ解説していきましょう。

 

なお、Dockerを使うメリットについては
Dockerコンテナを使うメリット」の記事でも詳しく解説しています。

 

移植が圧倒的に楽

移植が圧倒的に楽

Docker上で開発環境を構築するメリットとして、一番大きいのはこれではないでしょうか。

 

開発環境をDockerコンテナとして構築しておけば、OSやライブラリ、ミドルウェアを意識せずにその環境を使えるのがメリットです。

 

Dockerが入っているPCであれば、
その違いを意識せずに開発できるのはとても嬉しいです。

 

そのため、会社の端末、家の端末、出先の端末など、
どこでも同じインフラ環境で開発できるので捗ります。

環境構築のやり直しが出来る

環境構築のやり直しが出来る

Docker上に開発環境を作ることで、環境構築のやり直しがすぐにできます。

 

プログラミングをしていると、環境作ってる時に想定外のエラーが起こることは多々あります。

  •  ライブラリのインストールに失敗して中途半端に何かが入っちゃうとか…
  • パッケージが足りないと言われて、パッケージインストールしたのに結局上手くいかないとか…
  •  何かをインストールしたせいで、それまで上手くいってたものまで動かなくなったとか…

 

そんな時に、Dockerであればコンテナを抜けるだけで、
ごちゃごちゃした環境をリセット出来るのはとても有り難いです。

 

インフラ環境のエラーで開発がストップするのは、避けたいですよね。

 

Dockerを使うことで、インフラの面倒ごとから距離を置けるのは、嬉しいことです。

不要なものを入れなくて良い

不要なものを入れなくて良い

Python開発環境をDocker上に作ることで、
余計なものを入れる必要がなくなります。

 

 Pythonの開発を行うとき、
その開発環境にPython自体のバージョン管理として
virtualenvとかpyenvを入れて運用することが多いでしょう。

参考記事:【pythonバージョン管理】pyenvの使い方

 

Docker上で開発環境を作れば、それらのミドルウェアは入れなくて良くなります。

 

他のバージョンを入れたいときは別のコンテナやイメージを作れば解決しますからね。

 

簡単な構成にしておくことは環境を作る上でも、運用上でもメリットは大きいです。

 

DockerやPythonについてもっと学ぶなら

Dockerコンテナについてもっと学ぶなら

Dockerは、その便利さ & 手軽さから、注目度が高まっているサービスです。

 

システム開発の現場でも徐々に使われ始めてきているので、積極的に学習しておきたい技術です。

 

DockerについてスキルをつけるならUdemyの教材がオススメです。

>> 米国AI開発者がゼロから教えるDocker講座

 

Udemyは買い切りの動画学習サービスです。
一度購入してしまえば、その教材はずっと使うことができます。

 

さらに今なら30日間返金保証がついているので、
一度購入して自分の思っていたものと違った場合は費用がかかりません。

 

上記の教材はDockerの知識がない人でもゼロから実用的なレベルのDockerスキルを習得できます。
その教材の質の高さから異例の4.8以上の評価がついています。

 

また、Pythonについて基礎から学ぶのであれば、オンラインスクールがオススメです。

 

オンラインスクールで学習すると、講義も分かりやすく、
サポート体制もしっかりしているので、これからPythonを学ぶ人にもオススメです。

 

オンラインで無料レッスンを体験することもできるので、
自分にあっているかどうかを確かめることができます。

 

オススメは以下の3つです。
どのスクールも無料体験が用意されているので、
契約前に自分に最適なスクールを探すことができるでしょう。

✔️オススメのプログラミングスクール ベスト3

プログラミングスクールについては「プログラミングスクールで失敗しないためには【オススメベスト3も紹介】」の記事でも紹介しています。

 

気になった方はぜひチェックしてみて下さい〜!

コメント

タイトルとURLをコピーしました