AWS Fargate에서 컨테이너 명령을 변경하고 정기적으로 실행하는 방법
실현하고 싶은 것
샘플 코드로 다음 foo, bar Rake 작업을 정기적으로 실행하고 싶습니다.
Rake 작업
task default: %w[foo]
task :foo do
puts "Hello Foo"
end
task :bar do
puts "Hello Bar"
end
Docker 이미지
FROM ruby:2.6.3
ENV LANG ja_JP.UTF-8
RUN gem install bundler
RUN mkdir /app
WORKDIR /app
ADD Gemfile /app/Gemfile
ADD Gemfile.lock /app/Gemfile.lock
ADD Rakefile /app/Rakefile
RUN bundle install
CMD ["bundle", "exec", "rake", "foo"]
전제
환경 구축
이번 포인트는 여기입니다. ECS 태스크 정의 작성시 컨테이너 추가 화면에서 명령을 겹쳐쓸 수 있습니다. 이것을 이용해, foo, bar Rake 태스크를 실행하는 태스크 정의를 2개 준비합니다.
태스크 정의를 2개 준비했습니다.
마지막으로 각 태스크 정의용으로 태스크 스케줄링을 설정하면 완료.
이제 여러 Rake 태스크 스크립트를 포함한 Docker 이미지를 이용하여 각 Rake 태스크를 별도의 스케줄로 정기 실행하는 것이 실현되었습니다.
이번은 간단한 스크립트의 실현 예이지만, 다른 언어나 프레임워크의 배치 처리도 ECS+Fargate에 이식할 수 있게 될 것입니다.
참고
Reference
이 문제에 관하여(AWS Fargate에서 컨테이너 명령을 변경하고 정기적으로 실행하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hypermkt/items/efeb4b956aee3205519d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)