배포, 운영/Infra

배포, 운영/Infra

[Infra] Docker 세팅 및 Mysql, Jenkins, SpringBoot 컨테이너 생성

Docker 명령어 모음항상 이미지 삭제 → 볼륨(데이터 삭제) 순서이미지: 애플리케이션, 볼륨: 애플리케이션의 데이터 라고 이해하면 쉬움# 실행 종료sudo docker stop # 모든 실행중인 컨테이너 종료sudo docker stop $(docker ps -q)# 컨테이너 제거sudo docker rm mysql-server# docker 볼륨 목록 확인sudo docker volume ls# docker 볼륨 삭제sudo docker volume rm ubuntu_mysql_data# 텍스트 에디터 nano docker-compose.yml# 등록된 컨테이너 확인(실행 안한 컨테이너도 포함)sudo docker ps -a실행 관련# 개별 실행sudo docker-compose up -d # 전체..

배포, 운영/Infra

[Infra] HTTPS 적용

HTTPS 적용 개요HTTPS 사용 이유HTTPS는 데이터를 암호화하여 클라이언트와 서버 간 통신을 안전하게 만듬개인정보 보호 및 데이터 무결성을 유지하며, 브라우저에서 "보안되지 않은 연결" 경고를 방지Let's Encrypt를 활용하면 무료로 SSL/TLS 인증서를 발급받아 HTTPS를 구현Webroot 방식으로 HTTPS 적용Certbot 대신 Webroot 방식을 사용하는 이유Amazon Linux 2에서는 python3-certbot-nginx 패키지가 지원되지 않아 Certbot을 통한 자동 설정이 어렵다대신 Webroot 방식을 사용해 Nginx를 통한 HTTPS를 설정한다Webroot를 활용한 인증서 발급1. 인증서 발급/home/ec2-user/dist는 example로 정적 index...

배포, 운영/Infra

[Infra] HTTPS 재갱신 및 자동 갱신 적용 방법

Cerbot을 통해 적용했던 HTTPS 인증서의 만료HTTPS는 웹 사이트와 사용자 간의 데이터 통신을 암호화하여 보호해 주는 보안 프로토콜이다. Cerbot은 이러한 HTTPS 인증서를 무료로 발급해주는 Let's Encrypt와 통함된 도구로 SSL/TLS 인증서를 쉽게 관리하고 갱신할 수 있도록 도와준다Cerbot이란?Let's Encrypt에서 제공하는 무료 SSL 인증서를 자동 설치 및 갱신하는 오픈 소프트웨어이다. 유효기간은 90일이다. 따라서 매번 수동 갱신을 할 것이 아니라면 자동 갱신을 설정해주는게 일반적이다. 기존 프로젝트의 Cerbot 유효기간 만료처음 적용할 당시 자동 갱신을 적용하지 않아 이렇게 90일이 지난 exam-lab.store 은 https가 적용이 되지 않은 모습이다. ..