반응형

연습으로 사용하고 있는 EC2 t2.micro 서버에 Jenkins를 설치하려고 한다.

 

그냥 설치하기 보다는 도커를 이용하여 설치하려고 한다.

 

 

프로젝트가 자바 17을 사용하기 때문에 jenkins/jenkins:lts-jdk17 이미지를 사용하려고 한다.

젠킨스도 기본적으로 자바를 사용하기 때문에 해당 이미지를 사용하면, 굳이 자바를 따로 설치할 필요가 없다.

 

docker-compose.yml을 사용하여 설치했다.(이게 더 편해서...)

version: '3.8'

services:
  jenkins:
    image: jenkins/jenkins:lts-jdk17
    container_name: jenkins
    user: root  
    ports:
      - "12040:8080"
      - "50000:50000"
    volumes:
      - /home/ubuntu/jenkins/volume:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock  
      - /usr/bin/docker:/usr/bin/docker

 

jenkins_home은 젠킨스의 설정파일이기 때문에 지정된 폴더로 빼두어야 한다.

그래야 젠킨스를 다시 설치하더라도 설정들이 유지된다.

 

docker.sock도 젠킨스 내부의 docker.sock과 서버의 docker.sock을 연결해주어야, 젠킨스 내부에서 도커를 사용 할 수 있다.

 

젠킨스는 기본적으로 8080, 50000포트를 사용한다. 그 중 접속할 때 필요한 8080포트는 12040 포트로 매핑해두었다.

 

이제 접속해보자.(EC2에서 해당 포트를 열어두어야 접근이 가능하다)

 

 

일단 이런 화면이 나올텐데, 로그에 찍힌 코드를 붙여넣으면 된다.

 

sudo docker logs jenkins로 나온 패스워드를 입력하자

 

그 다음에는 초기 설정화면이 나온다.

이거도 suggested로 설치해도 문제 없다

 

그 다음에는 관리자 계정 생성 화면인데

알맞게 입력하고 버튼들을 누르면

 

이렇게 설치가 완료된다.

반응형

해당 내용은 다른 블로그에도 많이 작성이 되어 있지만, 그거 찾아보기도 귀찮아서 이번에 정리해보려고 한다.

 

환경은 Unbuntu이다.

 

우선 apt를 update 해준다.

sudo apt update

 

그러면 무언가 쭈루루룩 업데이트가 될 것이다.

 

그럼 이 중에서 자바 17을 설치해주자.

sudo apt install openjdk-17-jdk

 

일단 이렇게만 하면 자바가 설치가 된다.

 

하지만 여기서 끝나는 것이 아니라 환경변수도 설정을 해주어야 한다.

 

일단 현재는 설정이 되어있지 않다.

 

자바의 경로를 찾아보자

which java

 

그러면 보통 아래의 경로로 나올 것이다.

which java
/usr/bin/java

 

그러면 아래의 명령어를 입력하고

readlink -f /usr/bin/java

나오는 경로를 복사한다.

 

복사한 경로를 아래에서 사용한다.

vi /etc/profile

vi 편집기를 열고 가장 아래 부분에 해당 코드를 추가해준다.

 

export JAVA_HOME={복사한 경로(뒤에 bin 그거 빼고)}
export PATH=$JAVA_HOME/bin:$PATH

 

나는 아래와 같이 작성했다.

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
export PATH=$JAVA_HOME/bin:$PATH

 

작성을 완료하면 아래의 명령어로 적용을 시켜준다.

source /etc/profile

 

완료가 되었다.

명령어로 적용이 되었는 지 확인하자.

'크무톡톡 프로젝트' 카테고리의 다른 글

Nginx로 Swagger Proxy_pass  (1) 2024.07.22
CompletableFuture 적용으로 성능 튜닝  (0) 2024.03.09
Springboot와 DialogFlow 연동 - API  (0) 2024.01.17
SMTP 서버 구축  (0) 2024.01.04
EC2 memory swap  (0) 2023.12.29
반응형

저번에 진행했던 프로젝트에서 스프링 부트 빌드 중간에 멈추는 버그가 있었다.

찾아보니 메모리의 용량부족으로 중간에 멈추는 것이라고 해서 Swap Memory를 늘리고 빌드를 하는 방법으로 해결했었다.

그렇기에 이번에도 혹시 몰라서 Swap memory를 설정하고 작업을 하려 한다.

우선 free -h 명령어로 현재 메모리를 확인해보자

free -h

그럼 이렇게 1GB 정도의 메모리만 보이게 될 것이다.

여기에 추가로 Swap Memory를 설정해주어야 한다.

 

1. Swap 파일 메모리를 할당

sudo dd if=/dev/zero of=/swapfile bs=128M count=16

 

2. swapfile에 접근권한 설정

sudo chmod 600 /swapfile

 

3. swap 공간 생성

sudo mkswap /swapfile

 

4. swapfile을 swap memory에 추가

sudo swapon /swapfile

 

5. 부팅시 swap memory 설정

sudo vi /etc/fstab

# 마지막에 해당 코드 추가
/swapfile swap swap defaults 0 0

 

확인을 해보면

 

이렇게 잘 설정이 된 것을 볼 수 있다.

'크무톡톡 프로젝트' 카테고리의 다른 글

Nginx로 Swagger Proxy_pass  (1) 2024.07.22
CompletableFuture 적용으로 성능 튜닝  (0) 2024.03.09
Springboot와 DialogFlow 연동 - API  (0) 2024.01.17
SMTP 서버 구축  (0) 2024.01.04
EC2에 Java 17 설치  (1) 2023.12.29
반응형

어제 심심해서 이것저것 찾아 보던 중에 가비아에서 도메인 가격을 확인했었는데, 생각보다 저렴했다.

.com의 도메인은 좀 비쌌지만, .site는 첫 해에 2000원 정도라서 그냥 일단 아무생각없이 사버렸다.

 

일단 샀으니 연결을 해보자

클라우드는 AWS를 사용하고 도메인은 가비아에서 구입해서 둘을 연결 해줘야 한다.

 

우선 AWS의 Route 53에 들어가서 

여기 DNS 관리 쪽을 눌러준다.

지금은 하나의 도메인이 연결되어서 저렇게 나오지만, 연결이 안되어 있으면 다르게 나왔던 걸로 기억한다.

여기서 호스팅 영역 생성을 눌러주자.

 

그러면 이 페이지가 보일텐데, 그냥 뭐 당연하게도 도메인 이름에다가 도메인을 넣어주면 된다.

 

그러고 생성된 호스팅 영역의 NS에 4개의 네임 서버가 나올텐데

이 4개를 가비아에 넣어주는 것이다.

 

가비아의 현재 이용 중인 도메인 부분으로 들어가면 

여기 이렇게 네임서버 설정이 있는데, 저 설정으로 들어가서 차례로 4개를 입력해주면 된다.

반응형

페이지를 언제 받을지는 모르겠지만 일단 nginx를 이용한 초기설정은 끝내놓으려 한다.

(옛날에 nginx 그냥 키면 Hi! Nginx 이런 페이지가 보였던 거 같은데?)

일단 목표는 딱 거기까지 이다.

접속을 하면 만든 페이지가 보이지는 않더라도 다른 에러가 발생하지 않는것

 

일단 EC2에 접속해서 필요한 패키지들을 다운받자

sudo apt update
sudo apt install nginx

아마 nginx는 다운로드 하는 중간에 Y를 한 번 눌러줘야 할 것이다.

 

다운로드를 했다면 일단 nginx를 실행해준다.

sudo service nginx start

 

실행이 되었는지 확인하고 싶다면

sudo service nginx status

이 명령어를 입력했을 때 초록불이 나오는 지 확인하면 된다.

 

이제 포트를 제대로 잡았는 지 확인해보자.

nginx는 설정을 건드리지 않는다면 80번 포트를 사용하게 된다.

 

sudo lsof -i :80 -P -n

이 명령어를 입력했을 때 

이렇게 nginx가 잘 잡고 있는지를 확인해보자.

 

여기까지 왔다면 서버에서 할 설정은 모두 끝난 것이다.

 

AWS로 가서 인바운드 설정에 80번 포트를 열어준다.

(아마 기본으로 열려있는 것으로 기억한다.)

 

모두 완료가 되었으니 이제 접속해보자.

 

여기서 주의해야 할 점은 https가 아닌 http로 접속해야 한다는 것이다.

나도 처음에 https로 접속했다가 페이지가 계속 뜨지 않아 계속 찾아봤는데, 생각해보니 기본적으로 url에 접속하면 https로 접속하기에 페이지가 보이지 않았던 것이었다.

 

접속을 하면 이렇게 nginx 기본 페이지가 보이는 것을 확인 할 수 있다.

이제 다음에는 이 nginx에 우리가 만든 페이지를 띄우기로 할 것이다.

'블로그 개발 프로젝트' 카테고리의 다른 글

Redis ERR value is not an integer or out of range  (0) 2023.08.09
Nginx에 페이지 연결하기  (0) 2023.08.07
ExceptionHandler  (0) 2023.07.28
Swagger @ApiModelProperty에 example List  (0) 2023.07.28
Swagger Response  (0) 2023.07.28

+ Recent posts