前回
いろんな記事調べてPyenvを使ってなんとかPythonを入れた。
その時の記事はこちら
今回やろうとしていること
condaでpython環境整えたらいいよとアドバイスいただいたので
バージョンや仮想環境も含めてcondaで管理したい。
私の環境
macOS Monterey 12.6
MacBook Air (M1, 2020)
Python 3.10.8
conda 何も入っていない状態↓
zsh: command not found: conda
動いているところ arm64
なんでminiforge
Pythonの環境を作るにあたって思ったことは
「こんなにいろんな用語が出てくるとは思わなんだww」
でした。
-
仮想環境の種類やパッケージ管理にanacondaにminiconda、
本当に色々多すぎてどれをどう使っていくのかが初心者にはわからなかった... -
Pyenvを使ってPythonを入れてみたが、その後Pyenvの使いにくさにあたってしまい、いただいたアドバイスをもとに環境を見直すことにした
-
まだPythonを入れただけで仮想環境は準備していなかったので変更しやすかった
特にこの辺りが環境周りを変えた主な理由です。
最初はminicondaで環境を作ろうかと思ったのですが
M1 Macという縛り(?)があったため、相性の良い環境はないかと調べていった時に見つけたのがminiforgeでした。
miniforgeをインストール
まずminiforgeのGithubに入って
README.mdのDownloadから
Miniforge3-MacOSX-arm64
というファイルをダウンロードしました。
ダウンロードフォルダに落としたシェルスクリプトが入っているので
実行前にターミナルでファイルの場所まで移動しておきます。→cd Downloads
シェルスクリプトを実行してみる
bash Miniforge3-MacOSX-arm64.sh
このコマンドを実行するとインストールが始まります。
基本的にEnterキーとyesを押しておけばインストールできます。
※実行メモを飛ばして次の工程をみる場合はこちら
今後、自分が見返しても良いように、インストール時に聞かれる内容をメモとして残します。
実行コマンドを押すと
Welcome to Miniforge3 22.9.0-1
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>
と聞かれるので「ENTER」を押す。
次に著作権周りの内容の確認が出てくるので
Do you accept the license terms? [yes|no]
と聞かれるまでEnterキーを押し続け
上文の「ライセンスに同意しますか?」という内容には「yes」を。
続いて、
Miniforge3 will now be installed into this location:
Miniforge3 のインストール先を聞かれるので問題なければEnterを。
違う場所に指定したいなら⌘/Ctr+Cで場所変更を。
Enterを押すと諸々がインストールされます。
Do you wish the installer to initialize Miniforge3
by running conda init? [yes|no]
初期化して良い?と聞かれるので「yes」を。
Thank you for installing Miniforge3!
と聞かれたらインストールが完了になりますが
最後にこのコマンドを入れます。
source ~/.zshrc
Condaが入ったかを確認
conda -V
conda 22.9.0
condaが入ったかを確認します。
not foundにもなっていないようなのでひとまず安心できた。
仮想環境を作っていく
今回は「backend」という名前で仮想環境を作ります。
Pythonのバージョンは3.10です。
conda create --name backend python=3.10
このコマンドを打ち込むと色々ターミナルの中で動いていき
Proceed ([y]/n)?
「続行する?」と聞かれるので「y」を押します。
Retrieving notices: ...working... done
と聞かれたら仮想環境を有効化するために
conda activate backend
と入れて起動させます。
プラグインを入れてみる
- Webアプリのためにdjango
- データ分析のためにjupyter, pandas
を追加してゆこうかと考えています。
データ分析は一旦置いといて、djangoをインストールします。
conda install django
インストールが終わったらconda list
を実行してdjangoが含まれているか確認します。
ローカルサーバーの準備
ローカルサーバー基、プロジェクトを作るために
ディレクトリを置く場所まで移動しておきます。
仮ですがtestという名前で用意しますので。
django-admin startproject test
を入れ込むと「test」ディレクトリが作られ色々入った模様です。
サーバーを起動するためcd test
で移動します。
注意点:VSCodeでコマンド実行しない方が良い
ローカルサーバーを立てようとした際に
VSCodeのターミナルでコマンド python manage.py runserver
を実行しましたら
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?
というエラーが出ました。
原因はVSCodeで実行しようとしたためでした。
なのでVSCodeのターミナルではなく、通常のターミナルの方で
conda activate backend
python /path/to/script/manage.py
を実行し直しました。
もうすでにmanage.pyがあるディレクトリに移動している場合は
2つ目のコマンドは実行しなくて問題ないです。
サーバーの起動
python manage.py runserver
を打つと
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
Django version 4.1.3, using settings 'test.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
と出ましたのでhttp://127.0.0.1:8000/
をブラウザに入れると
無事起動できました!
起動しているものを止める場合は次のコマンドを。
conda deactivate
参考
今回の環境作成にあたって参考にした記事サイトさまです。