coolify 로 원격 서버를 활용해보자 (multi server)
지난 coolify 관련 글은 로컬서버에 설치하는 방법이었다. https://blog.1day1.org/717
coolify 는 로컬서버 뿐 아니라, 원격지 서버를 등록해서 앱을 배포해서 사용할 수 있다.
서버 사양을 분산하거나, 프로젝트별로 분리해서 관리하는 등 여러가지 이유로 원격서버에 설치할 필요가 생긴다.
서버는 여러개가 될 수 있지만, 전체를 coolify 에서 통합관리하기에 불편하지는 않다.
원격서버는 클라우드 서버일 수도 있고, 리얼서버일 수도 있다. 인터넷 접속할 수 있다면 모두 등록 가능하다.
원격서버 등록은 크게 어렵지는 않다. 단, 원격접속 설정 한가지만 사전 등록해준다.
coolify 가 원격서버에 접속할 수 있도록 ssh key 등록을 해준다.(아래 이미지의 localhost's key )
ssh key 를 원격지서버에 등록해준다.
어떤 key 를 등록해줘야 하는가? (publick key 등록)
coolify 의 Keys & tokens 메뉴에서 아래 이미지의 표시한 부분에서 Public Key 를 복사한다.(아래는 일부지만, 전체를 복사)
원격지 서버에 접속해서 .ssh/authorized_keys 에 해당 Public Key를 입력해준다.
형식은 아래와 비슷한데, 맨끝의 coolify 는 구분용으로 임의로 입력한 값이다.
# cat .ssh/authorized_keys
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5A-퍼블릭키값-NDZbYm-전체-AuLg3 coolify
사전 준비는 끝. (coolify => remote 접속이 가능하면 OK)
주의!!
다음 진행하기 전에 원격서버가
웹(80/443 포트)서버로 이미 사용중이라면 정상설치가 안될 수 있다.
원격 서버에 도커엔진 설치하기
위 Validate Server & Install Docker Engine 버튼을 클릭하면,
서버에 접속가능한지 체크하고, 필요한 도커관련 설치를 한다.
특별한 이상이 없다면, 위처럼 단계가 처리된다.
원격 서버를 등록한 후에는 coolify 앱 등록 / 배포등을 진행하면 된다.
Products => Resources => (앱 또는 서비스) => [서버선택시 등록한 원격 서버 선택] => Configuration => Deploy
위와 같은 단계로 진행하는데, 중간단계에 설치/배포할 서버를 원격지 서버로 선택하면 된다.
[활용방안]
이 작업을 하는 이유는 기존의 단독으로 운영되는 스프링프로젝트 서버가 있다.
접속이 많을 때 서버가 다운되는 현상이 있어서 어떻게 조치할 까 생각중인데, 스프링앱을 일부 분리해서 도커에 올려 부하 분산을 할려고 구상중이다. 접속이 많은 현상이 항상 그런 것이 아니라, 간헐적으로 나타나기 때문에 앱을 신규 등록 했다가 다시 삭제 하는 형태로 유동적으로 운영할려고 한다.
[추가]
혹시 위 원격서버 등록시 다음과 비슷한 에러를 만난 경우
기존에 nginx 로 80/443 포트를 사용하던 원격서버에 세팅하는 경우 위와 같은 에러를 만나게 된다.
관련 조치는 nginx 설정을 다른포트(8080/8443 등)로 바꾸고 coolify 쪽에서 proxy 설정을 연동해줘야한다.
즉, coolify 가 80 / 443 포트를 컨트롤 하도록 해줘야 한다. 이 부분은 별도로 포스팅 하도록 하겠다.
'알아둘일' 카테고리의 다른 글
Mac 세쿼이아 sequoia 업그레이드 후 Xcode 16 - iOS 빌드 이슈 (feat. bitcode) (8) | 2024.09.25 |
---|---|
기존 nginx 서버에 coolify 원격 서버 세팅시 주의점 (feat. caddy) (0) | 2024.09.23 |
네이버 스팸은 조심하자. 어떻게 확인하지? (1) | 2024.09.19 |
이제 postgres 에 친숙해져보자. (feat. cli ) (2) | 2024.09.08 |
coolify - Github App 을 사용해서, git push 하면 자동 배포하자 (0) | 2024.09.08 |
WRITTEN BY
- 1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.