210511-TIL

Jane·2021년 5월 12일
5

TIL

목록 보기
55/103
post-thumbnail

오늘 한 일

느낀 점

🛠️ 삽질로그

  • 어제는 분명히 ssh-add -L key.pem와 같은 식으로 identity를 추가하고, ssh -A ubuntu@(elastic ip 주소)로 접속할 수 있었던 것 같은데 오늘은 계속 에러가 떴다. 온갖 설정 파일을 바꿔도 permission denied가 떴고 몇 시간 가량 삽질했는데 결국 원인은 저 -L 옵션이었다. 저 옵션을 빼고 ssh-add key.pem로 identity를 추가해주니 접속이 잘 된다. L 옵션은 List public key parameters of all identities.라는 뜻인데 결국 add 해주는 것이 아니라 모든 identity의 key를 보여주는 것뿐인 것 같다. 추가도 안하고 보여주기만 하고 접속을 시도했으니 안될 수밖에...
  • isUser값이 계속 true로 안 바뀌길래 한참 삽질했는데, 알고보니 업데이트된 팀이 아니라 업데이트되기 전 팀으로 DTO를 만들어서 그런거였다. 리팩토링 시에는 항상 코드 순서에 유의하자.

🍩 프로젝트

  • 드디어 nginx, crontab 적용 및 배포 자동화 스크립트 작성까지 전부 완료했다! webhook에 알림도 제대로 온다.
  • 로컬에서 빌드한 뒤 s3 버켓에 올린 jar 파일을 가져오는 식으로 했더니 너무 가벼워진게 체감된다. 더 이상 ec2 인스턴스가 멈출까 걱정하지 않아도 된다😭
  • 작성한 배포 자동화 스크립트
#!/bin/bash
IP=`curl -s 169.254.169.254/latest/meta-data/public-ipv4`
START="$IP 배포를 시작합니다."
END="$IP 배포가 완료되었습니다."

SB=`aws s3 ls s3://baseball-bucket/baseball-0.0.1-SNAPSHOT.jar`

echo $SB
if [[ ! $SB ]]; then
        echo "no need to build"
        exit 0
fi

echo "Deploy start: `date`"

curl -X POST --data-urlencode "payload={\"text\": \"$START\"}" webhook_address

fuser -k 8080/tcp

aws s3 cp s3://baseball-bucket/baseball-0.0.1-SNAPSHOT.jar ./baseball

cd nohup
nohup java -jar ~ubuntu/baseball/baseball-0.0.1-SNAPSHOT.jar &

aws s3 rm s3://baseball-bucket/baseball-0.0.1-SNAPSHOT.jar

curl -X POST --data-urlencode "payload={\"text\": \"$END\"}" webhook_address

echo "Deploy end: `date`"

2개의 댓글

comment-user-thumbnail
2021년 5월 12일

배포스크립트 멋지네요 ㅎㅎ

1개의 답글