前提・実現したいこと
ECSにデプロイしたサイトを表示したいです。
フロントエンドをTypeScriptでバックエンドをRubyOnRailsでWebアプリを開発しております。
そこでまずフロントエンドをECSで表示したいと思い、現在取り組んでおります。
発生している問題・エラーメッセージ
ECRにDockerイメージをプッシュし、ECSでFargateを使用してサイトを表示しようとしています。
そこでタスクの定義->クラスターの作成->サービスの作成の流れで作成していき、パブリックIPアドレスにアクセスしたところ以下の写真のようにサイトにアクセスできませんでした。
サービスのログを見てもエラーログが出力されていませんでした。
現在どこが原因かわからない状況です。
該当のソースコード
TypeScriptのDockerです。
Docker
1FROM node:14.18-alpine 2 3WORKDIR /app 4 5ENV LANG C.UTF-8 6ENV TZ Asia/Tokyo 7 8ADD package.json /app/package.json 9ADD package-lock.json /app/package-lock.json 10 11RUN npm install -g npm 12RUN rm -rf node_modules 13RUN rm package-lock.json 14RUN npm cache clear --force 15RUN npm install 16 17 18ADD . /app 19 20RUN npm run build 21 22 23EXPOSE 3000 24 25CMD ["npm","run","start"]
docker-compose.ymlのコードです。
docker
1version: "3" 2 3services: 4 db: 5 container_name: db 6 image: mysql:8.0 7 environment: 8 TZ: Asia/Tokyo 9 MYSQL_ALLOW_EMPTY_PASSWORD: "yes" 10 MYSQL_USERNAME: root 11 MYSQL_ROOT_PASSWORD: password 12 volumes: 13 - mysql_data:/var/lib/mysql 14 ports: 15 - 3307:3306 16 networks: 17 app_net: 18 ipv4_address: '172.20.0.2' 19 20 backend: 21 container_name: backend 22 build: 23 context: ./backend/ 24 dockerfile: Dockerfile 25 image: backend 26 command: /bin/sh -c "rm -f tmp/pids/server.pid && bundle exec rails server -b 0.0.0.0" 27 tty: true 28 stdin_open: true 29 volumes: 30 - ./backend:/app:cached 31 - bundle_data:/usr/local/bundle:cached 32 - /app/vendor 33 - /app/tmp 34 - /app/log 35 - /app/.git 36 environment: 37 TZ: Asia/Tokyo 38 depends_on: 39 - db 40 ports: 41 - 5000:3000 42 networks: 43 app_net: 44 ipv4_address: '172.20.0.3' 45 46 front: 47 build: 48 context: ./frontend/ 49 dockerfile: Dockerfile 50 volumes: 51 - ./frontend:/usr/src/app 52 command: sh -c "cd app && yarn && yarn start" 53 ports: 54 - "3000:3000" 55 networks: 56 app_net: 57 ipv4_address: '172.20.0.4' 58 59networks: 60 app_net: 61 driver: bridge 62 ipam: 63 driver: default 64 config: 65 - subnet: 172.20.0.0/24 66 67volumes: 68 mysql_data: 69 bundle_data:
自分で調べたことや試したこと
ECSのスペック(CPUやメモリ)のスペックを上げたりセキュリティグループのインバウンドルールを変更したりしました。
使っているツールのバージョンなど補足情報
Docker version 20.10.10
あなたの回答
tips
プレビュー