Spring boot 외부 환경변수 주입

Crow·2022년 8월 23일
2

삽질

목록 보기
8/16

spring boot

spring boot 를 활용해서 프로젝트 진행중
Oauth2를 이용한 소셜 로그인 구현중 발급받은
client-id, client-secret 키들을 appilcation.yml에 그대로 사용시 github에 올라가서 문제가 됨

인텔리제이 실행 설정에서 환경변수 추가로 주입해주기로함


이런형태로 값을 주입시켜주면됨

mysql ID, PW도 동일하게 해주면됨


docker

또한 docker에서도 사용가능함
도커는 yml파일이 있는곳에다가 .env파일을 만들어서 필요한 환경변수 적어두면됨
(xxx.env가 아닌 .env 그대로 만들어야 하는거 같음 사실 확인은 안해봄 )
당연하겠지만 .env파일을 깃허브에 올리지 말아야함

내 도커 yml파일은
docker-compose.yml이며 위와 마찬가지로${} or "${}"형태로 사용후

version: "3.9"

services:
  mysql:
    image: "mysql:8.0.29"
    container_name: "mysql"
    ports:
      - "${MYSQL_HOST_PORT}:3306"
    volumes:
      - "study-marathon-data:/var/lib/mysql"
    environment:
      MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"

volumes:
  study-marathon-data:

.env파일에

MYSQL_HOST_PORT=xxxx  # mysql을 연결할 포트 번호
MYSQL_ROOT_PASSWORD=xxxx  # mysql root 계정 비밀번호

형태로 값을 넣어주면됨

그리고 터미널을 호출해서 프로젝트의 경로로 이동후
docker compose up -d 명령어를 써주면 적용됨 ^오^

profile
어제보다 개발 더 잘하기 / 많이 듣고 핵심만 정리해서 말하기 / 도망가지 말기 / 깃허브 위키 내용 가져오기

0개의 댓글