Elasticbeanstalkの環境構築が、急に必要になりAmazonLinux2で構築しました
色々面倒だったのでメモとして残す。
VPC作成やIAMの鍵設定とかは省きインスタンスの処理のみ記載してます。
一部間違ってても動いたのでよしとしたので、ノーワランティな記述です。
事前作業:
AmazonLinux2のイメージを立ち上げて、インスタンスを起動する。
セキュリティグループは、443/80を一旦全あけして、SSHは自IPのみ解放。
IAMにElasticbeanstalkに必要そうな権限を付与して、クレデンシャル発行
→今思うとインスタンスプロファイルでよかったかと思った。
→ebコマンド実行時にEB系のロールだけだと足りなかったのでAdmin追加
(急ぎの仕事だったのを言い訳にしたがよくないな)
以下インスタンスでのコマンド履歴
sudo yum update -y sudo yum install -y git sudo yum install -y gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel git clone https://github.com/pyenv/pyenv.git ~/.pyenv rm -rf .pyenv curl https://pyenv.run | bash echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(pyenv init -)"' >> ~/.bashrc echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc source ~/.bashrc pyenv -v echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile pyenv install 3.9.16 pyenv global 3.9.16 sudo pip3 install virtualenv git clone https://github.com/aws/aws-elastic-beanstalk-cli-setup.git python ./aws-elastic-beanstalk-cli-setup/scripts/ebcli_installer.py echo 'export PATH="/home/ec2-user/.ebcli-virtual-env/executables:$PATH"' >> ~/.bash_profile && source ~/.bash_profile
あとはeb initでの初期化してよしなに扱うのみ。
面倒だったのEBの構築スクリプトがPython3.9の構文らしかったので、
デフォルトで入ってたPython3.7ではエラーが出て詰まりました。
エラーをBingAIに聞いたらPython3.9以上がいる記述とのこと
pyenvで入れ直して流したら、今度はvirtualenvいるとか面倒すぎる。
コマンド長いので、コピーして小分けでターミナル投げた方がよいかもです。
参考:
EB CLIのセットアップスクリプトを使ってみた - Qiita
EB CLIのインストール手順(2022年版) | Fire Sign Blog