inflearn logo
강의

Course

Instructor

Introduction and Practice of CI/CD for Non-Majors

[Practice] Managing application.yml added to .gitignore with CI/CD

java 환경변수 주입 질문

Resolved

356

작성자 없음

0 asked

0

안녕하세요 실습하다보니 질문이 생겨서 질문드립니다.

 

저같은 경우에는 .yml 파일을 올리돼, 중요한 값은 ${변수명} 이런식으로 작성해서 올리는 편입니다.

 

따라서 이를 EC2 서버의 .bashrc 파일에 export로 설정한 뒤, source ~.bashrc로 값을 초기화해놓았습니다.

 

echo로 확인해보니 문제없이 출력되구요...

 

그 후 CICD를 적용시켯더니 계속 해당 환경변수를 찾지 못한다는 에러가 발생합니다.. 어떤 부분이 잘못되었는지 모르겠어서 질문드립니다.

 

name: deploy chatGPT server to AWS EC2

on:
  push:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: ssh로 서버 접근 & git pull 후 재배포 진행
        uses: appleboy/ssh-action@v1.0.3
        with:
          host: ${{ secrets.EC2_HOST }}
          username: ${{ secrets.EC2_USERNAME }}
          key: ${{ secrets.EC2_PRIVATE_KEY }}
          script_stop: true
          script: |
            source ~/.bashrc
            cd /home/ubuntu/spring-chatgpt-communication
            git pull origin main
            ./gradlew clean build
            sudo fuser -k -n tcp 8081 || true
            nohup java -jar build/libs/*SNAPSHOT.jar > ./output.log 2>&1 &

 

아래는 저의 CICD yml 파일입니다!

aws docker ci/cd github-actions aws-code-deploy infrastructure aws-ec2

Answer 2

0

GodGwan

EC2에서는 제대로 잘 동작하는것을 확인했습니다.

 

https://github.com/appleboy/ssh-action/issues/58

 

찾아보니 이런 springboot에서의 환경변수 인식 문제가 있는 것을 확인했습니다.

아마 이 문제때문이 아닌가 생각합니다!

0

jscode

ssh-action의 자체 문제였군요👍👍

나와있는 이슈에서의 해결 방법으로도 해결이 안 되신다면

또 질문 남겨주세요:D

0

jscode

안녕하세요 용관님!

보여주신 코드만 봤을 때는 크게 문제가 되는 부분은 없어보여서 하나하나씩 디버깅을 해봐야 알 것 같습니다!

우선 위 코드를 Github Actions로 작동시키지 않고
직접 EC2에 들어가서 하나하나 명령어를 실행시켰을 때는 정상 작동하는 지 확인 한 번 부탁드립니다~!

무중단 배포

0

58

2

workflows/deploy.yml 궁금증

0

53

2

.git-credentials 파일이 없이 배포가 성공한 이유가 궁금

0

57

1

(해결 - 정보공유) /home/runner/work/_temp/6be6e~0.sh: line 1: ./gradlew: Permission denied 오류

1

63

2

(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상

1

73

2

질문_ 강의 순서 및 그외

0

71

2

섹션 4 - Docker + 백엔드(Spring Boot)

0

65

2

deploy.yml작성후 원격에 push불가

0

63

2

CodeDeploy 사용시 registration 요구

0

106

3

스프링 종료 명령어

0

68

2

RAM & 스왑메모리 폭증하는 문제

0

102

2

섹션 4, 5와 6, 7은 유사한가요?

0

67

1

code deploy 배포입니다.

0

98

3

사용자 삭제가 안되는 이유

0

88

2

이미지 pull중 no basic auth credentials 문제입니다.

0

113

2

Docker Compose파일을 작성했을때 CI CD와의 연동

0

96

2

보안그룹 생성 오류

0

85

3

AWS 5월에 탈퇴해서 그러는데....

0

81

1

배포 오류

0

80

2

node.js 설치시 에러

0

149

2

appspec.yml, 스크립트 파일 수정요청

0

82

2

appleboy/ssh-action stop_script 대체

1

181

2

Vue.js 파일 배포

0

61

2

aws를완강하고 ci/cd로 넘어왔습니다.

0

85

1