DevOps & Infra/AWS
[AWS] Elastic Beanstalk으로 배포 시 Buildfile, Procfile 사용하기(Golang)
나른한댕댕이🐶
2023. 1. 19. 13:43
728x90
반응형
# 배경
ElasticBeanstalk을 사용하여 배포를 진행할 때 서버에 명령어를 선행시키고 싶다.
# Buildfile
단기간 실행되고 작업 완료 후 종료되는 명령에는 Buildfile 사용
# Procfile
프로세스가 계속 실행되어야 하는 명령어는 Procfile을 사용
## 현재 상황
보통 ElasticBeanstalk으로 배포를 진행하면 Buildfile과 Procfile이 올라갔다는 내용이 이벤트에 떠서 볼 수 있었다.
코드에 Buildfile과 Procfile을 작성하지 않아도 자동으로 실행이 되어 EC2서버로 접속하여 `/var/app/current`에 접근하면 Buildfile과 Procfile의 내용을 확인할 수 있다.
기본 Buildfile
build: go build -o bin/application application.go
기본 Procfile
web: bin/application
# Buildfile을 통한 선행 명령어 실행 방법
Buildfile에서 build.sh 파일을 실행할 수 있도록 하고 build.sh 파일에 실행하고자 하는 명령어에 쉘스크립트를 작성한다.
Buildfile 예시
make: chmod u+r+x ./build.sh
make: ./build.sh
build.sh 예시
#!/usr/bin/bash
set-xe
echo start
#build command
go build -o bin/application application.go
728x90
반응형