본문 바로가기

project

(5)
프로젝트 개선하기 이런저런 기술을 배우고 습득해서 연습을 하고 싶지만 새로운 프로젝트를 기획하는 것보다는 기존의 프로젝트에 개선점을 적용하면서 발전시키는 것이 좋겠다는 생각에 프로젝트에 부족한 부분을 개선하고 기능을 추가하려고 한다. 개선 1 : In memory h2 database 테스트 단계 적용하여 빌드 단계에 테스트 실행 기존의 프로젝트는 CI/CD 과정에서 테스트가 무시되어서 실행이 되어왔다. 이렇게 진행한 이유는 프로젝트를 진행할 때는 테스트 코드 작성을 하지 않았고 기능 구현에 집중했기 때문이다. 또한 외부 시스템(DB)과 연계된 테스트를 어떻게 작성해야 하는지에 대한 방법을 전혀 몰랐기 때문에 작성된 테스트를 빌드 단계에서 검증이 되는지 확신할 수 없었기 때문이다. 이러한 이유로 기존에는 배포 전에 개발 ..
HTTPS 적용하기 1. https 란 무엇인가? http 프로토콜에 TLS/SSL을 적용하여 보안을 강화한 프로토콜이다. https://rachel-kwak.github.io/2021/03/08/HTTPS.html HTTPS란? (동작방식, 장단점) 몇 년 전만 해도 전자 상거래 페이지가 있는 웹사이트에서만 HTTPS를 사용하고 있었다. 그러나 2014년, 구글에서 HTTPS를 사용하는 웹사이트에 대해서 검색 순위 결과에 약간의 가산점을 주겠다고 rachel-kwak.github.io 2. SSL계층? OSI 7계층에서 5번 계층으로 서버와 클라이언트간의 보안을 담당하는 계층이다. 공개키 암호시스템을 이용해서 전송 구간에서 데이터의 노출을 방어하는 역할을 수행한다. https://12bme.tistory.com/80 [정..
[Docker file] RUN CMD ENTRYPOINT 실행 방식 Dockerfile을 통해서 홍보사이트 스프링 부터 서버를 배포하는 과정에서 ENTRYPOINT을 사용해서 어플리케이션을 실행했다. 하지만 실행한 어플리케이션의 로그를 출력한 application.log error.log 가 생성되지 않아서 로그를 확인할 수 없었다. ENTRYPOINT ["java", "-jar", "/app/spring-webapp.jar", "1>", "/app/log/application.log", "2>", "/app/log/error.log"] 문제 원인 shell에 의존적인 명령사용 문제가 발생한 이유는 셀에 의존적인 명령어를 사용했지만 도커에서는 셀을 거처서 명령을 실행하는 것이 아니었다. 따라서 로그 출력하는 부분은 작동하지않고 어플리케이션만 실행된 것이었다. 이전에 막연..
CI/CD 환경구축시에 도움 받은 자료 정리 git action https://docs.github.com/ko/actions/learn-github-actions/expressions 식 - GitHub Docs 식 정보 식을 사용하여 워크플로 파일에서 환경 변수를 프로그래밍 방식으로 설정하고 컨텍스트에 액세스할 수 있습니다. 식은 리터럴 값, 컨텍스트에 대한 참조 또는 함수의 조합일 수 있습니 docs.github.com script if else 조건문 사용법 참고 : https://hand-over.tistory.com/32] Shell script(쉘) if 조건문, 조건식 안녕하세요. 오늘은 쉘 스크립트에서 if 문과 조건식 사용하는 방법을 포스팅할께요. if 문 사용법 if 문 형식은 아래와 같습니다. (if 문 후에 나오는 '[' 사..
Kong API gateway 사용기 사용 배경 React와 Spring를 이용해서 서비스를 개발을 함에 있어서 운영되는 서버가 두개이기에 브라우저에서 Cors에러가 발생하는 것을 방지하고 나중에 부하를 분산하기 위한 시스템을 구축할 때 용이하기 때문에 사용했다. kong? kong이 제공하는 기능은 kong의 공식 홈페이지에 가면 설명이 되어있으니 그것을 참고하는 것이 좋다. kong을 사용하려고 하면 데이터베이스를 선택할지 안할지를 선택할 수 있다. 데이터베이스를 사용하면 좀 더 능동적으로 kong을 사용할 수 있고 추후 변경사항이 있을 때 kong을 재실행하지 않고 운영이 가능하다. 하지만 추가적이 데이터베이스를 운영해야한다는 점은 단점이라고 생각했다. 개발할 서비스에서는 하나의 db만 사용할 것을 고려하고 있기 때문에 데이터 베이스 ..