Jenkins

AWS + 젠킨스 + 스프링 부트 ci/cd 구현 2

Choiji 2021. 5. 12. 11:17

[Jenkins] - AWS + 젠킨스 + 스프링 부트 ci/cd 구현 1

 

AWS + 젠킨스 + 스프링 부트 ci/cd 구현 1

[AWS] - AWS EC2 SSH pem키 없이 접속하기 [AWS] - AWS 인스턴스 [AWS] - AWS(아마존 웹 서비스) ssh로 인스턴스에 연결 시작하기 전에 AWS 세팅이 끝나지 않으셨으면 위에 글을 보고 세팅해주세요 1. 자바 설치.

choiiii-dev.tistory.com

젠킨스 프록시 설정

 

젠킨스 설치가 끝났으면 

nginx를 통해 프록시까지 등록해보겠습니다.

우선 아래 명령어를 통해 amazon-linux-extras에서 nginx를 지원하는지 확인해주세요

amazon-linux-extras list | grep nginx
$ amazon-linux-extras list | grep nginx
 38  nginx1                   available    [ =stable ]

nginx가 아닌 nginx1이므로 nginx1로 설치합니다.

sudo yum clean metadata && sudo amazon-linux-extras install nginx1

 

설치가 다되면 nginx.conf 파일에서 프록시를 설정합니다.

sudo vim /etc/nginx/nginx.conf

 

server {
	listen       80;
	listen       [::]:80;
	server_name  _;
	root         /usr/share/nginx/html;

	# Load configuration files for the default server block.
	include /etc/nginx/default.d/*.conf;
	
    /////
    이곳
    /////
    
	error_page 404 /404.html;
	location = /40x.html {
	}

	error_page 500 502 503 504 /50x.html;
	location = /50x.html {
	}
}

 

위에 이곳이라고 쓰여있는 부분에 아래 글을 붙여 넣어 주세요

location / {
		proxy_pass http://localhost:8080;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header Host $http_host;
}

다 되셨으면 nginx를 실행하면 됩니다.

sudo systemctl start nginx

실행이 제대로 됐는지는 아래 명령어로 확인합니다.

sudo systemctl status nginx
$ sudo systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2021-05-12 01:24:44 UTC; 12s ago
  Process: 9187 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 9183 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 9182 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 9189 (nginx)
   CGroup: /system.slice/nginx.service
           ├─9189 nginx: master process /usr/sbin/nginx
           └─9191 nginx: worker process

 두 번째 줄에 active (running)이 뜨면 정상적으로 작동된 겁니다.

 

그럼 이제 aws 인스턴스에 80 포트를 보안규칙에 등록하시고

 

인스턴스의 퍼블릭 ip로 접속해보시면 아래처럼 젠킨스로 접속할 수 있습니다.

프록시설정 끝