![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/vVSwz/btrNmznyJ0o/BfRZTHJjhYgmWCs94JM7q0/img.png)
이전에 AWS Lightsail에서 서버를 빌리고 도메인 연결 후 https로 띄우는 작업까지 마쳤다. 실제 프로젝트를 돌리기 위해서는 당연히 DB는 필수적이다. 이번에는 AWS Lightsail에서 제공하는 DB서버까지 활용해서 터미널을 통해 DB서버에 접근하고 WorkBench에 연결해보려한다. 1. AWS Lightsail 데이터베이스 생성 데이터베이스 탭에서 데이터베이스를 생성 2. 생성한 DB 옵션 필자는 MySQL로 첫 3개월이 무료인 1G DB를 생성하려고 한다. 생성 후 다소 시간이 걸릴 수 있다. 3. 사용자 명, 암호, 엔드포인트 확인 사용자명과 DB 암호, 그리고 엔드포인트와 포트를 확인할 수 있고 이를 통해서 DB에 접근이 가능하다. 4. 데이터베이스 연결 접속한 서버에서 DB에 접..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/xYOjw/btrNkDwMkhU/scqwA8uVEkPAJPa7CL6Xc0/img.png)
이전에 포스팅한 AWS Lightsail (1), AWS Lightsail (2) 에 이어서 HTTP로 띄운 서버를 Certbot을 통하여 HTTPS로 전환하여 보안을 강화하려한다 1. HTTPS 란 HyperText Transfer Protocol over Secure Socket Layer, HTTP over TLS, HTTP over SSL, HTTP Secure 등으로 불리는 HTTPS는 HTTP에 데이터 암호화가 추가된 프로토콜이다. HTTPS는 HTTP와 다르게 443번 포트를 사용하며, 네트워크 상에서 중간에 제3자가 정보를 볼 수 없도록 암호화를 지원하고 있다. 2. certbot 설치 Let's Encrypt라는 비영리 기관을 통해 무료로 TLS인증서를 발급받을 수 있다. certbot ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/egTFq9/btrNkaOoGbl/DGhjk3xLPK6cTr612dBrkK/img.png)
이전에 AWS에서 제공하는 Lightsail Ubuntu Linux를 빌려 키파일을 생성하고 서버에 접속하는 시간을 가졌다. 이번에는 nginx를 설치하고 도메인을 구입하여 이 서버의 IP와 연결하려고 한다. 1. 서버 접속 2. nginx 설치 sudo apt install nginx -y 3. nginx 설정 nginx를 설치하면 /etc/nginx 폴더 안에 sites-available, sites-enabled 폴더가 존재 sites-available은 가상 서버 환경들에 대한 설정 파일들이 위치하는 부분으로 가상 서버를 사용하거나 사용하지 않던간에 그에 대한 설정 파일들이 위치하는 곳이다. sites-available에 있는 가상 서버 파일들중에서 실행시키고 싶은 파일을 symlink로 연결한 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bY6H3U/btrM5Q4QYFO/5nh54KBmA7u0TwGS3JQGqk/img.png)
EC2는 회사에 인프라 관리자가 있거나 자신이 가상 서버, 네트워크, 디스크 볼륨, 보안 그룹 등의 관리를 하드하게 해야하는 분에게 상대적으로 더 적합하다. 상세 설정을 통해서 비용이든 성능이든 이득을 얻을 수 있는 환경에서 일하고 있다면 EC2와 관련 서비스들의 유연한 환경설정은 큰 장점이기 때문이다. 또한 EC2는 네트워크 트래픽보다는 CPU 연산 위주의 프로젝트를 돌릴 때 더 유리하다. 무엇보다 서버를 껏다 켰다 하면서 과금되는 시간을 조절할수도 있다는 온디멘드 방식은 매우 매력적인 옵션이다. 그러나 뒤집어 이야기하면 세팅 하려고 정작 개발을 못하거나, 개발하는 시간보다 인프라 관리하는 시간이 더 들어야 하는 분에게는 주객이 전도된 상황이 생기게 된다. Lightsail은 인프라 관리해줄 사람이 없..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c4TicG/btrMIthPOrE/4rYoaWEInQs07wSuN9YzIk/img.png)
이번에는 Freestyle project가 아닌 Pipeline으로 만들어 보려고 한다. (결과가 좀 더 보기 좋게 나온다고함) pipeline { agent any //등록한 jdk를 활성화 tools { jdk 'openjdk-17-jdk' } //스테이지로 구성됨 각각의 단계 stages { //준비 단계 stage('Prepare') { steps { git branch: 'master', url: 'https://github.com/sh970901/dockerDB' } post { //성공했을 경우 success { sh 'echo "Successfully Cloned Repository"' } //실패했을 경우 failure { sh 'echo "Fail Cloned Repository"' }..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cdJQWM/btrMI33UqZl/XNgqJI5JccL7FZUpk5f4n0/img.png)
jenkins_1에서 도커를 설치하여 HOST OS의 도커명령어를 사용할 수 있도록 한다. jenkins_1 bash 도커 설치 apt-get update -y apt-get install -y ca-certificates curl gnupg lsb-release mkdir -p /etc/apt/keyrings rm /etc/apt/keyrings/docker.gpg curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] ht..