0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

miniforgeを使ってM1 MacにCondaの環境を準備する

Last updated at Posted at 2022-11-15

前回

いろんな記事調べて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」
でした。

  1. 仮想環境の種類やパッケージ管理にanacondaにminiconda、
    本当に色々多すぎてどれをどう使っていくのかが初心者にはわからなかった...

  2. Pyenvを使ってPythonを入れてみたが、その後Pyenvの使いにくさにあたってしまい、いただいたアドバイスをもとに環境を見直すことにした

  3. まだPythonを入れただけで仮想環境は準備していなかったので変更しやすかった

特にこの辺りが環境周りを変えた主な理由です。

最初はminicondaで環境を作ろうかと思ったのですが
M1 Macという縛り(?)があったため、相性の良い環境はないかと調べていった時に見つけたのがminiforgeでした。

miniforgeをインストール

まずminiforgeのGithubに入って
README.mdのDownloadから

Miniforge3-MacOSX-arm64というファイルをダウンロードしました。
スクリーンショット 2022-11-15 14.32.27.png

ダウンロードフォルダに落としたシェルスクリプトが入っているので
実行前にターミナルでファイルの場所まで移動しておきます。→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/をブラウザに入れると

スクリーンショット 2022-11-16 0.16.18.png

無事起動できました!

起動しているものを止める場合は次のコマンドを。

conda deactivate

参考

今回の環境作成にあたって参考にした記事サイトさまです。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?