【发布时间】:2021-07-01 14:27:22
【问题描述】:
我有一个从 Dockerfile.dev 部署的虚拟反应应用程序:
FROM node:alpine AS builder
WORKDIR '/app'
COPY package.json .
RUN npm install
COPY . .
RUN npm run build
FROM nginx
EXPOSE 80
COPY --from=builder /app/build /usr/share/nginx/html
在使用 TravisCI 推送到 GitHub 后立即部署到 elasticbeanstalk:
sudo: required
services:
- docker
before_install:
- docker build -t name/docker-react -f Dockerfile.dev .
script:
- docker run -e CI=true name/docker-react npm run test
deploy:
provider: elasticbeanstalk
region: 'us-east-1'
app: 'docker'
env: 'Docker-env'
bucket_name: 'elasticbeanstalk-us-east-1-709516719664'
bucket_path: 'docker'
on:
branch: main
access_key_id: $AWS_ACCESS_KEY
secret_access_key: $AWS_SECRET_KEY
应用程序已成功部署到 EB,但在我访问它时显示 502 Bad Gateway(通过单击 AWS EB 中的应用程序链接)。增强的健康概览报告: 进程默认状态不正常 18 小时 (Target.FailedHealthChecks)。
Docker-env EC2 实例正在运行,在允许所有传入连接后,我可以正常连接:
我可以毫无问题地在本地使用 Dockerfile.dev 构建我的应用程序:
docker build -t name/docker-react -f Dockerfile.dev .
=> => naming to docker.io/name/docker-react
docker run -p 3000:3000 name/docker-react
【问题讨论】:
标签: reactjs docker amazon-elastic-beanstalk