Я занимаюсь разработкой приложения на основе архитектуры микроуслуг, используя Spring-boot и Angular7 для внешнего интерфейса. Что мне нужно сделать, так это развернуть его в докере, который я установил на своем экземпляре AWS ec2, используя Travis.
На данный момент я создал файл travis.yml
language: java
jdk: oraclejdk8
services:
- mysql
- rabbitmq
- redis-server
before_install:
- mysql -e 'CREATE DATABASE IF NOT EXISTS mydb;'
image: my-service/aws-cli-docker
variables:
AWS_ACCESS_KEY_ID: "##########"
AWS_SECRET_ACCESS_KEY: "##########"
deploy_stage:
stage: deploy
environment: Production
only:
- master
script:
- aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "i-########" --parameters '{"commands":["sudo docker-compose -f /home/ubuntu/docker-compose.yml up -d --no-deps --build"],"executionTimeout":["3600"]}' --timeout-seconds 600 --region us-east-2
Мой dockerfile находится в источнике службы следующим образом:
FROM java:8
VOLUME /tmp
ADD ./target/myService-0.0.1-SNAPSHOT.jar my-service.jar
EXPOSE 8081
ENTRYPOINT [ "sh", "-c", "java -Xms64m -Xmx512m -XX:+UseTLAB -XX:+ResizeTLAB -XX:ReservedCodeCacheSize=128m -XX:+UseCodeCacheFlushing -jar /my-service.jar" ]
и мой составной файл Docker находится в пути home / ubuntu на моем экземпляре ec2 следующим образом:
services:
vehicle-service:
image: my-service/aws-cli-docker
ports:
-8081:8081
Я выполняю сборку и тестирование сборки Travis, но нет ошибок развертывания или ошибок в образе докера. Может кто-нибудь выяснить, чего мне не хватает?