У меня есть приложение React, созданное с помощью Create-React-App. Я настроил конвейер развертывания с помощью GitHub Actions, так что, когда я фиксирую ветку 'pre-production', он запускает Docker Build, а затем помещает сборку в AWS.
Здесь является частью GitHub Actions .yml:
- name: Build and push image to Amazon ECR
id: build-image
env:
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
ECR_REPOSITORY: application
IMAGE_TAG: latest
run: |
# Build a docker container and
# push it to ECR so that it can
# be deployed to ECS.
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG .
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
echo "::set-output name=image::$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG"
Затем внутри моей службы ECS у меня выполняется задача, которая указывает на эту сборку, и внутри этого контейнера я передаю переменные среды, как показано ниже:
Затем я выхожу из консоли NODE_ENV в приложении, которое по какой-то причине продолжает говорить production вместо разработка .
console.log(process.env.NODE_ENV);