git clone <このリポジトリ>
cd ecs-handson
git clone の直後に
git config --local core.autoCRLF false
git status
# で差分がいっぱいでる
git checkout .
# で差分消滅
として、すべてのファイルの改行コードを LF
に変更してください。
本コマンドでは、cloneしたローカルリポジトリのみの設定ですが、これからDockerを始めるにあたり --global
で全体設定とすることを勧めます。
元ソースはこちら https://github.com/pynamodb/PynamoDB/tree/master/examples/url_shortener
これを コンテナ化して
- ローカルPCのDockerで動かす
- AWS上のECSで動かす
docker ps
接続できないとかエラーが出ないこと
aws s3 ls
自分のS3バケットが見える
いろいろはいったAMIを用意しておくので、ローカルでの作業をEC2でやりましょう。
ami-0dd817395062d54ca
- SSHが必要
- SG設定としては下記を開ける
- 22 (ssh)
- 8000-8010 (dynamo-local)
- 5000-5010 (flask)
- 1台でOK
時間がかかるので、CloudFromationでサクッと構築。 内容は後で説明します。
- docker
- python 2.7 or 3
- pip (python)
docker pull cnadiminti/dynamodb-local
docker run -d -p 8000:8000 cnadiminti/dynamodb-local
shell へアクセスできるか調べる http://localhost:8000/shell
DockerToolboxのの場合は (docker-machine ip のIP) http://192.168.99.100:8000/shell
pip install -r requirements.txt
python shortener.py
credentialがないとか、エラーが出た場合は下記を叩いてください。
export AWS_ACCESS_KEY_ID=dummy
export AWS_SECRET_ACCESS_KEY=dummy
ブランチを切り替えて進む
git checkout -b local-docker origin/local-docker
https://github.com/h-imaoka/ecs-handson/blob/local-docker/readme.md