가비아에서 도메인 구매
웹을 넘어 클라우드로. 가비아
그룹웨어부터 멀티클라우드까지 하나의 클라우드 허브
www.gabia.com
위의 사이트에서 원하는 도메인 하나를 구매해주었다.
도메인 관리(DNSZi)
DNSZi - 무료 네임서버(dns) 관리 서비스! 무료파킹서비스! 무료포워딩서비스!
<!-- --> 도메인 DNS관리를 웹에서 쉽게 하세요! - DNS를 관리하는데 시간과 비용이 드시나요?- 번거롭게 도메인 등록업체에 매번 DNS정보 수정을 요청하시나요?- DNS관리자에게 DNS정보 수정을 요청하
dnszi.com
이제 여기서 가비아에서 구매한 도메인의 관리 권한을 넘겨줘야한다.
도메인 추가하기를 눌러서
도메인명을 입력 한 뒤 추가해준다.
왼쪽을 보면 네임서버를 확인 할 수 있는데 가비아로 다시 들어가서 네임서버 정보를 변경해준다.
(My 가비아 -> 네임서버 설정 -> 호스트명에 등록해주면된다)
A 레코드 설정하여 IP 부여 (DNSZi 에서)
내 도메인은 다음과 같다.
시작하기 | LIKE💕SOMEONE
www.ddonggi.com
위에 IP 주소에는 네이버 클라우드 플랫폼에서 만든 서버의 공인 IP 주소를 적어주면 된다.
www 을 붙이고 추가하여 도메인에 IP를 부여해주었다.
Nginx Proxy Manager
기존에는 서버의 80포트에서 바로 내 프로젝트의 8080 포트로 연결을 해주었는데
nginx를 사용하여 80, 443 포트를(모든 http 요청) nginx가 받아서 어떤 도메인이냐에 따라 다른 곳으로 넘겨주게 할 것이다.
이제 docker에 설치를 해볼것이다.
mkdir -p "내가 설치할 곳"
# docker-compose.yml 생성
vim docker-compose.yml
# docker-compose.yml
version: "3"
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
environment:
TZ: "Asia/Seoul"
DB_MYSQL_HOST: "172.17.0.1"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "전에 설정해둔 계정"
DB_MYSQL_PASSWORD: "비밀번호"
DB_MYSQL_NAME: "nginx"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
실행
docker compose up -d
관리 콘솔 접속 후 관리자 계정정보를 변경해준다. (관리자 콘솔은 81번 포트로 설정해두었으므로 내 도메인:81 로 접속한다)
계정 정보 변경을 완료했다면 Proxy Hosts에서 내 도메인으로 요청이 오면 그 요청을 172.17.0.1:8080 으로 가도록 해야한다.
172.17.0.1:8080은 CentOS의 8080 포트이다. (그리고 이 포트는 내 프로젝트와 연결 되어 있다.)
Add Proxy Host 를 눌러
설정을 해준다.
설정 후 SSL 에서 인증서 발급받고 적용한다.
https://dongki1882.tistory.com/64
이제 위 링크에서 만든 기존 이미지를 제거하고 다시 생성해주겠다.
docker rm -f "이름"
docker rmi -f "이미지 이름"
# 빌드
./gradlew clean build
# 이미지 생성
docker build -t "이미지 이름" .
# 이미지 실행
docker run \
--name="이름" \
--restart unless-stopped \
-p 8080:8080 \
-e TZ=Asia/Seoul \
-d \
"이미지 이름"
이제 내 도메인으로 접속이 가능하다!!
이제 이 도메인으로 접속하면 CentOs의 443포트가 nignx proxy manager 443포트로 연결되어 있고 도메인을 확인한 후
172.17.0.1:8080 으로 보낸다. CentOS의 8080 포트는 내 프로젝트 8080포트와 연결되어 있으므로 내 프로젝트가
내 도메인을 통해 연결이 된다!!
'▸MAC > Linux' 카테고리의 다른 글
[Git Webhook 에러] 301 Moved Permanently (0) | 2023.05.11 |
---|---|
[네이버 클라우드 플랫폼에서 배포하기] 5. 젠킨스(Jenkins)를 통해 CI / CD 배포 환경 구축 (1) | 2023.05.10 |
[네이버 클라우드 플랫폼에서 배포하기] 3. CentOS에서 빌드 후 배포(Docker, DB, Git, Java) (0) | 2023.05.10 |
[네이버 클라우드 플랫폼에서 배포하기] 2. SSH 접속 (0) | 2023.05.10 |
[네이버 클라우드 플랫폼에서 배포하기] 1. 서버 생성 (0) | 2023.05.10 |