Takenari-Yamamoto / golang-practice

golang-practice
0 stars 0 forks source link

AWS ECSにデプロイ #4

Open Takenari-Yamamoto opened 7 months ago

Takenari-Yamamoto commented 7 months ago

前提

手順

Takenari-Yamamoto commented 6 months ago

あーこれやわ。

https://qiita.com/takatakaryoryo/items/ba4ab40b79b24ca4548d

Takenari-Yamamoto commented 6 months ago

Buildコマンド時にプラットフォームを指定

docker build -f app.Dockerfile -t golang-study-app --platform linux/x86_64 .

認証

aws ecr get-login-password --region ap-northeast-1 | docker login --username AWS --password-stdin 879853972315.dkr.ecr.ap-northeast-1.amazonaws.com

タグ付け

docker tag golang-study-app:latest 879853972315.dkr.ecr.ap-northeast-1.amazonaws.com/golang-study-api-repo:latest

PUSH

docker push 879853972315.dkr.ecr.ap-northeast-1.amazonaws.com/golang-study-api-repo:latest

サービス更新

aws ecs update-service --cluster golang-study-cluster --service golang-study-app-service --force-new-deployment

結果: なんかリージョン指定しろって言われた

You must specify a region. You can also configure your region by running "aws configure".

言われた通り指定してみる

aws ecs update-service --cluster golang-study-cluster --service golang-study-app-service --force-new-deployment --region ap-northeast-1

結果: OK

Takenari-Yamamoto commented 6 months ago

今度はDB接続でエラー

スクリーンショット 2024-04-26 22 25 42

Takenari-Yamamoto commented 6 months ago

terraformコンソール

terraform console

コンソールで以下のコマンドを実行して、データベースのエンドポイントを確認

aws_db_instance.golang-study-db.address
> aws_db_instance.golang-study-db.address
"golang-study-rds.cqa3pm32htlc.ap-northeast-1.rds.amazonaws.com"

いけてそう

環境変数もいけてそう スクリーンショット 2024-04-26 22 35 41

Takenari-Yamamoto commented 6 months ago

なんかエラーが出てる

スクリーンショット 2024-04-26 22 41 18

ResourceInitializationError: cannot pull secrets or registry auth: 実行リソースの取得に失敗しました: RequestError: リクエストの送信に失敗しました: Post "https://api.ecr.ap-northeast-1.amazonaws.com/": dial tcp 3.112.65.177:443: i/o timeout. タスクのネットワーク構成を確認してください。

ネットワーク周りの設定がおかしそう

Takenari-Yamamoto commented 6 months ago

パブリックサブネットにECSタスクが配置されてるのでとりあえずOK

https://github.com/Takenari-Yamamoto/golang-practice/pull/14/files#diff-7a26ad622b075f32dca14b71d1d434e0c9d74fb05fe1b176f59ff737d19b5084R108-R112

Takenari-Yamamoto commented 6 months ago

待てよ。 ポートが80になってるが、appでは8080で開放してるはず。

https://github.com/Takenari-Yamamoto/golang-practice/pull/14/files#diff-d7038ab736f1233b6ae29965fa6070aa13c8826796f42d8150b68a27753b803cR26

https://github.com/Takenari-Yamamoto/golang-practice/pull/14/files#diff-d7038ab736f1233b6ae29965fa6070aa13c8826796f42d8150b68a27753b803cR54

https://github.com/Takenari-Yamamoto/golang-practice/pull/14/files#diff-7a26ad622b075f32dca14b71d1d434e0c9d74fb05fe1b176f59ff737d19b5084R31-R32

Takenari-Yamamoto commented 6 months ago

無能すぎで何も解決できず。。

Takenari-Yamamoto commented 6 months ago

もう少し簡単にして考えるべきかも?

もう1つは

Takenari-Yamamoto commented 6 months ago

再起動したらエラー

2024/04/27 00:17:28 failed to connect db: pq: no pg_hba.conf entry for host "10.0.1.97", user "dbuser", database "golang_study_db", no encryption