Closed4

M1 MacbookProでPythonとPoetryを使って環境を作る

remrem

Motivation

Pythonを使ったサーバーサイドAPPを動かす必要がある。
筆者はサーバーサイド出身であるがJavaやScalaがを使っていたためPythonは未経験。

環境構築時の手順と詰まったポイントをまとめておきたい。

Goal

既存のサーバーサイドアプリケーションが起動すること

environment

M1 MacbookPro
Apple M1 Max
MacOS 13.5.1

remrem

Pythonのバージョン管理にはasdfを使う。
採用理由は他の言語のバージョン管理もこちらで行っているため。

remrem

asdfの設定

HomeBrewを使ってインストールし使い始める

brew install asdf

zshを使っているので.zshrcへasdf.shを追加

echo -e "\n. $(brew --prefix asdf)/libexec/asdf.sh" >> ${ZDOTDIR:-~}/.zshrc

その他のときはこちらを参照
https://asdf-vm.com/guide/getting-started.html#_3-install-asdf

プラグインのインストール

asdfはプラグイン形式で管理したい言語のプラグインをインストールすることで使用ができる
今回はpythonとpoetryを入れる

python

asdf plugin-add python 3.9.13

poetry

asdf plugin-add poetry

グローバルで使う場合

asdf global python 3.9.13

ローカルでの使用の場合

asdf local python 3.9.13

ローカルでの使用の場合はasdf localを実行したディレクトリ以下で指定したバージョンを使用することができる。

remrem

動作環境を切り替える

ARMチップを使っているので普段はarm64が選択される。
今回のアプリケーションはIntelチップの64bitアーキテクチャでないと動かないため環境を切り替える。

Rosette2

macOSではRosetta 2 という x8664 環境のエミュレーターがインストールされている。
今回はこちらを利用する。

uname -m

まずは現在の実行環境の状態を確認する。ARMアーキテクチャを使用しているときにはarm64とでる。

arch -x86_64 zsh

このコマンドを実行し実行環境を変更。再度確認をする。

このスクラップは17日前にクローズされました