У меня есть приложение, которое я развертываю на EBS с помощью задания развертывания circleci, используя это руководство . Приложение содержит файлы ".circleci / config.yml" и ".elasticbeanstalk / config.yml", которые я включу ниже. Мои учетные данные AWS хранятся в качестве переменных среды в настройках проекта CircleCi.
Задание развертывания circleci запускает развертывание EBS (я могу убедиться в этом, проверив панель мониторинга EBS и просмотрев действие), но в итоге завершается с ошибкой тайм-аута. Затем я проверяю панель управления EBS для приложения и вижу, что состояние работоспособности находится в состоянии «Тяжелый», а последние 5 записей трассировки:
5) ERROR | During an aborted deployment, some instances may have deployed the new application version. To ensure all instances are running the same version, re-deploy the appropriate application version.
4) ERROR | Failed to deploy application.
3) ERROR | Unsuccessful command execution on instance id(s) 'i-051f66b7a6591d7f7'. Aborting the operation.
2) INFO | Command execution completed on all instances. Summary: [Successful: 0, TimedOut: 1].
1) WARN | The following instances have not responded in the allowed command timeout time (they might still finish eventually on their own): [i-051f66b7a6591d7f7].
Я пытаюсь подключиться непосредственно к экземпляру, но он просто зависает.
Я пытаюсь проверить журналы с консоли AWS EBS, но загрузчик вращается бесконечно, и я никогда не вижу журналы.
Я бы хотел иметь возможность успешно развернуть приложение, используя circleci и ebs, и мне нужна помощь, чтобы выяснить, что я делаю неправильно или отсутствует.
Вот детали конфигурации:
// .elasticbeanstalk / config.yml
branch-defaults:
master:
environment: null
group_suffix: null
environment-defaults:
candace-sautman-portfolio-master:
branch: null
repository: null
global:
application_name: Candace Sautman Portfolio
default_ec2_keyname: null
default_platform: arn:aws:elasticbeanstalk:us-east-1::platform/Node.js running on
64bit Amazon Linux/4.5.3
default_region: us-east-1
include_git_submodules: true
instance_profile: null
platform_name: null
platform_version: null
profile: null
sc: git
workspace_type: Application
// .circleci / config.yml
defaults: &defaults
docker:
- image: circleci/node:8.5.0
working_directory: ~/jncampbell/CandaceSautmanPortfolio
shell: /bin/bash --login
version: 2
jobs:
build:
// omitted for brevity
deploy:
<<: *defaults
steps:
- checkout
- run:
name: Install GatsbyJS CLI
command: |
echo 'export PATH=$(yarn global bin):$PATH' >> $BASH_ENV
source $BASH_ENV
yarn global add gatsby-cli
- run:
name: Install NPM Packages
command: yarn install
- run:
name: Run Gatsby Production Build
command: gatsby build
- run:
name: Installing deployment dependencies
working_directory: /
command: |
sudo apt-get -y -qq update
sudo apt-get install python-pip python-dev build-essential
sudo pip install urllib3==1.22 awscli==1.14.38 awsebcli==3.13.0 --upgrade
- run:
name: Deploying
command: eb deploy --verbose --debug candace-sautman-portfolio-$CIRCLE_BRANCH
workflows:
version: 2
build-deploy:<br>
jobs:
- build
- deploy:
filters:
branches:
only: master