■ はじめに
AWS CodeBuild で管理されるDocker イメージのPython バージョンは 固定されている。(以下の公式サイトを参照)
https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/build-env-ref-available.html
しかし、Python2.X系の開発 や Docker イメージのPython バージョン以外の開発で Docker イメージのPython バージョン以外のバージョンが使いたい場合のメモ。
■ 対応案
https://dk521123.hatenablog.com/entry/2020/02/11/141852
で扱ったpyenvなどのPythonの仮想環境を利用する
■ サンプル
version: 0.2 env: variables: PYTHON_VERSION: "3.6.10" phases: install: runtime-versions: # Amazon Linux 2:2.0 および Ubuntu Standard:3.0 なら「3.8」 python: 3.8 commands: - yum update -y # pyenvインストール - git clone https://github.com/yyuu/pyenv.git ~/.pyenv # 環境編の設定 - echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile - echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile - echo 'eval "$(pyenv init -)"' >> ~/.bash_profile # bash_profile を適用 - source ~/.bash_profile # pyenvへのPythonのインストール - pyenv install ${PYTHON_VERSION} # 全ディレクトリのPythonの切り替え - pyenv global ${PYTHON_VERSION} # pyenv version確認 - pyenv versions # Python version確認 - python --version build: commands: - echo '以下省略'
関連記事
CodeBuild ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2020/01/21/221122
CodeBuildに flake8 を組み込む
https://dk521123.hatenablog.com/entry/2020/02/17/220545
CodeBuild で パラメータストア / Secrets Manager を使う
https://dk521123.hatenablog.com/entry/2020/02/18/230358
CodeBuild で カスタムDockerイメージを使ってビルドする
https://dk521123.hatenablog.com/entry/2020/05/23/080655
仮想環境 ~ pyenv / virtualenv / venv / pipenv ~
https://dk521123.hatenablog.com/entry/2020/02/11/141852