접속 dns 수정
This commit is contained in:
@@ -1,14 +1,19 @@
|
||||
# BizCare — exdev Caddy 서브도메인 스니펫
|
||||
# host 포트 83 → bizcare-frontend
|
||||
# 인증서: acme.sh 로 발급한 bizcare 전용 LE cert
|
||||
# /Users/aidev/dev/exAIChatbot2.0/docker/nginx/certs/bizcare/{fullchain,privkey}.pem
|
||||
# (Caddy 컨테이너 마운트: /etc/caddy/certs/bizcare/)
|
||||
# host 포트 83 → bizcare-frontend (구 billcare-frontend)
|
||||
#
|
||||
# 인증서:
|
||||
# bizcare: .../certs/bizcare/{fullchain,privkey}.pem
|
||||
# billcare: .../certs/billcare/{fullchain,privkey}.pem (구 도메인 → 리다이렉트용)
|
||||
# Caddy 컨테이너 마운트 예: /etc/caddy/certs/{bizcare,billcare}/
|
||||
#
|
||||
# 설치: 이 스니펫을 ex-chatbot Caddyfile 에 import 한 뒤
|
||||
# docker exec ex-chatbot-caddy caddy reload --config /etc/caddy/Caddyfile
|
||||
|
||||
# BizCare
|
||||
https://{$BILLCARE_DOMAIN:bizcare.exdev.co.kr} {
|
||||
# 신규 도메인 (정본)
|
||||
https://{$BIZCARE_DOMAIN:bizcare.exdev.co.kr} {
|
||||
tls /etc/caddy/certs/bizcare/fullchain.pem /etc/caddy/certs/bizcare/privkey.pem
|
||||
handle {
|
||||
reverse_proxy host.docker.internal:{$BILLCARE_HOST_PORT:83} {
|
||||
reverse_proxy host.docker.internal:{$BIZCARE_HOST_PORT:83} {
|
||||
flush_interval -1
|
||||
transport http {
|
||||
read_timeout 120s
|
||||
@@ -22,3 +27,9 @@ https://{$BILLCARE_DOMAIN:bizcare.exdev.co.kr} {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# 구 도메인 → 신규로 영구 리다이렉트 (인증서 있을 때만 동작)
|
||||
https://{$BILLCARE_LEGACY_DOMAIN:billcare.exdev.co.kr} {
|
||||
tls /etc/caddy/certs/billcare/fullchain.pem /etc/caddy/certs/billcare/privkey.pem
|
||||
redir https://{$BIZCARE_DOMAIN:bizcare.exdev.co.kr}{uri} permanent
|
||||
}
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:${PATH:-/usr/bi
|
||||
export FRONTEND_PORT="${FRONTEND_PORT:-83}"
|
||||
export BACKEND_PORT="${BACKEND_PORT:-18082}"
|
||||
export MYSQL_PORT="${MYSQL_PORT:-3308}"
|
||||
export APP_CORS_ORIGINS="${APP_CORS_ORIGINS:-https://bizcare.exdev.co.kr,http://bizcare.exdev.co.kr,http://localhost:83,http://127.0.0.1:83}"
|
||||
export APP_CORS_ORIGINS="${APP_CORS_ORIGINS:-https://bizcare.exdev.co.kr,https://billcare.exdev.co.kr,http://bizcare.exdev.co.kr,http://billcare.exdev.co.kr,http://localhost:83,http://127.0.0.1:83}"
|
||||
|
||||
mkdir -p "$(dirname "$DEPLOY_LOG")"
|
||||
exec >> "$DEPLOY_LOG" 2>&1
|
||||
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
# BizCare 도메인(bizcare.exdev.co.kr) LE 인증서 발급 도우미
|
||||
# 전제: DNS A/CNAME 이 서버를 가리키고, HTTP-01 용 webroot 가 열려 있어야 함.
|
||||
set -euo pipefail
|
||||
|
||||
DOMAIN="${BIZCARE_DOMAIN:-bizcare.exdev.co.kr}"
|
||||
WEBROOT="${ACME_WEBROOT:-/var/www/certbot}"
|
||||
CERT_OUT="${CERT_OUT:-/Users/aidev/dev/exAIChatbot2.0/docker/nginx/certs/bizcare}"
|
||||
EMAIL="${ACME_EMAIL:-admin@exdev.co.kr}"
|
||||
|
||||
echo "==> domain : $DOMAIN"
|
||||
echo "==> webroot: $WEBROOT"
|
||||
echo "==> out : $CERT_OUT"
|
||||
|
||||
mkdir -p "$CERT_OUT"
|
||||
|
||||
if ! command -v acme.sh >/dev/null 2>&1 && [ ! -x "$HOME/.acme.sh/acme.sh" ]; then
|
||||
echo "acme.sh 가 없습니다. https://github.com/acmesh-official/acme.sh 설치 후 재실행하세요."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ACME_BIN="${ACME_SH:-$HOME/.acme.sh/acme.sh}"
|
||||
[ -x "$ACME_BIN" ] || ACME_BIN="$(command -v acme.sh)"
|
||||
|
||||
"$ACME_BIN" --issue -d "$DOMAIN" -w "$WEBROOT" --email "$EMAIL" || true
|
||||
|
||||
# 심볼릭/복사는 환경에 맞게 조정
|
||||
LIVE="$HOME/.acme.sh/${DOMAIN}_ecc"
|
||||
[ -d "$LIVE" ] || LIVE="$HOME/.acme.sh/${DOMAIN}"
|
||||
if [ ! -d "$LIVE" ]; then
|
||||
echo "발급 디렉터리를 찾지 못했습니다: $HOME/.acme.sh/${DOMAIN}[_ecc]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cp -f "$LIVE/fullchain.cer" "$CERT_OUT/fullchain.pem"
|
||||
cp -f "$LIVE/${DOMAIN}.key" "$CERT_OUT/privkey.pem" 2>/dev/null \
|
||||
|| cp -f "$LIVE/private.key" "$CERT_OUT/privkey.pem"
|
||||
|
||||
chmod 644 "$CERT_OUT/fullchain.pem"
|
||||
chmod 600 "$CERT_OUT/privkey.pem"
|
||||
|
||||
echo "==> 인증서 저장 완료: $CERT_OUT"
|
||||
echo "==> Caddy reload:"
|
||||
echo " docker exec ex-chatbot-caddy caddy reload --config /etc/caddy/Caddyfile"
|
||||
Reference in New Issue
Block a user