Google Ai Studio Build에서 만든 앱을 Web App으로 사용하기 위한 리눅스 Web Server + Node.js Backend Server 설치/세팅하기

tech-document 2025.07.05 댓글 크리에이터요셉

목차

    반응형

     

     

     

     

     

    시작하며, 

     

    Google Ai StudioBuild라는 기능이 신기하여 필요한 을 만들어 보았습니다.

     

    단 10분 만에 직접 코딩하지 않고 원하는 기능의 앱을 만들 수 있었는데요, 제법 괜찮고 만족스러워서 조금만 더 다듬으면 활용할 수 있을 듯하여 다듬고 보완하니 제법 그럴듯한 앱이 완성되었습니다.

     

    문제는, 앱을 사용하려면 Google Ai Studio에 접속하여서 사용하거나 아니면 소스코드를 내려받아서 PC의 웹브라우저에서 열어서 사용해야 하는데 그렇게 사용하면 몇 가지 불편한 사항이 있었습니다.

     

    • Google Ai Studio Buld Apps 안에서 사용할 때 사용자가 직접 만든 아이콘, 음성파일, 효과음, 이미지로고 등이 적용되지 않는다. (방법을 모를수도...)
    • PC의 웹브라우저에서 사용하기 위해서는 웹서버(HTTP_Server)와 Node.JS, NPM, tailwind css 등을 설치해야 한다.
    • 항상 웹서버가 실행되어 있어야 한다.
    • 혼자만 사용할 수 있다. (배포의 어려움)
    • 다른 다른에게 배포하려면 설치/세팅과정에 대한 설명서를 제공하거나 직접 설치해 줘야 하는 수고로움이 발생한다. 

     

    그렇다고 독립적으로 작동하는 앱의 제작은 공부도 더 해야 하고 제법 많은 지식과 노력이 필요할 듯하여 가장 쉽게 접근할 수 있는 웹 서비스 형태로 이용할 수 있는 웹앱(web app)을 생각하게 되었습니다. 

     

    하지만 소스코드를 웹서버에 올린다고 해서 바로 사용할 순 없었으며 웹브라우저가 이해하고 처리할 수 있도록 변환하는 별도의 빌드과정을 거쳐야 하고 Gemini Api도 발급받아서 백엔드 서버라는 곳에 등록해야 하는 등 다소 복잡한 과정이 많아서 제 기억력의 한계를 극복하고자 그 과정을 기록하게 되었습니다.

     

     

    본 글은, 구글 Ai 스튜디오빌더에서 만든 을 웹(Web)으로 접속하며 사용하기 위해 리눅스 서버세팅하는 내용을 기록한 일지입니다. 상세한 설명 없이 코드 몇 줄만 달랑 기록하여 무심하게 느껴질 수도 있겠지만 필요하신 분에게는 그래도 조금 도움이 되리라 믿으며 시작합니다. 

     

     

     


     

     

     

    1. 진행 전 주의사항

     

    Copy this app 버튼을 눌러서 다른이름으로 저장 후 진행 권장합니다. 본 과정이 진행되면서 소스코드가 일부 변경되기도 하니 원본을 안전하게 보관하는 것을 권장합니다.

     

     

     

     

     


    2. 시스템 구성 요소

     

    제가 만든 실시간 영상 기록을 위해 카메라와 마이크에 접근하여야 하고 브라우저에 저장되는 임시 녹화 영상파일을 사용자 PC의 폴더에 복사해 넣는 기능으로 인해 HTTPS 프로토콜이 필요하였습니다. HTTPS 프로토콜을 정상적으로 세팅하기 위헤서는 고정 IP도메인이 필요하다고 하여 서버 호스팅을 이용하게 되었습니다.

     

     

     

     

     


    3. 프롬프트 

     

    본 과정은 Google Ai Studio의 Build App Ai의 도움을 받아가며 진행하고 있습니다.  몇 번의 시행착오 끝에 아래와 같은 프롬프트를 완성하였습니다. 

     

     

    # 프롬프트 예시

    이 애플리케이션을 리눅스 서버에 설치해서 웹앱으로 사용하려고 해. 
    아래 항목을 기준으로 하여 백엔드 서버와 웹서버를 하나의 서버에 설치하고 세팅 후 최종적으로 애플리케이션을 웹에서 접속하여 사용하는 결과 도출까지의 모든 과정을 초보자도 쉽게 따라할 수 있도록 자세하게 설명해줘. 
    설명은 한글로 부탁해.

    1. 서버: 서버호스팅
    2. OS: Rocky Linux 8.1
    3. Web server: Nginx
    4. 백엔드 서버: Node.JS
    5. HTTPS 프로토콜  사용
    6. 웹서버용 사용자 계정: examstaff
    7. 도메인: examstaff.com
    8. 빌드: 서버에 파일을 배포하기 전에 .tsx 파일들을 브라우저가 완벽하게 이해할 수 있는 일반 .js 파일로 변환

     

     

     

     


    4. 서버 기본 세팅

     

     

    1) 서버 접속

     

    카페24의 가상서버호스팅을 신청하면 root 계정을 사용하도록 설정되어 있어서 root로 바로 접속하였습니다. 

    # ip를 이용한 서버 접속
    ssh root@your_server_ip # 서버의 실제 IP 주소 사용

     

    또는

    # domain을 이용한 서버 접속
    ssh root@your_domain

     

     

     

    2) 기본 애플리케이션 업데이트

     

    카페24 가상서버호스팅 신청할 때 root 계정으로 바로 접속할 수 있도록 설치가 되었기에 sudo를 사용할 필요 없었으나 형식상 함께 표기하였습니다. 

    sudo dnf update -y

     

     

     

    3) 웹서비스용 계정 등록

     

    신규 사용자를 생성하면서 홈 디렉토리를 만들고, 기본 쉘을 /bin/bash로 설정

    # 사용자계정 만들기
    sudo useradd -m -s /bin/bash User_Name
    
    # 비밀번호 등록
    sudo passwd User_Name
    
    # sudo 권한 부여
    sudo usermod -aG wheel User_Name
    
    # User_Name 계정으로 재접속
    ssh User_Name@<서버IP 또는 도메인>

     

     

     

     

    4) sshd Root 계정 접속 차단하기

     

    보안상 root 계정으로 바로 접속하는 것은 바람직하지 않다고 하여 root 계정의 ssh 직접 접속을 차단하였습니다. 

     

     

    sshd_config 수정하기

    vi /etc/ssh/sshd_config

     

     

    # 아래 줄을 찾아서 Yes를 No로 변경합니다.

    PermitRootLogin no

     

     

     

    sshd 재시작하기

     

    주의사항!! sshd를 재시작 하기 전, 사용자 계정을 먼저 등록 후 새로운 터미널에서 새로 등록한 사용자 계정으로 로그인이 되는지 확인 후 재시작 권장. 실수로 사용자 계정을 만들고 비밀번호를 설정하는 과정에서 오타가 입력되었다면 Root로 로그인하지 않는 이상 서버 접근을 할 수 없는 상황이 발생할 수 있습니다. 

    sudo systemctl restart sshd

     

     

     

     

     


    3. Root 계정 무단 로그인 시도 ip 자동 차단하기

     

     

    서버 초기 세팅 후 다음 날 아침에 Root 계정으로 로그인을 하니 아래와 같은 메시지를 보며 불안감을 느껴 본 과정을 추가하였습니다.

    마지막 로그인: 화  6월 24 23:18:45 KST 2025 일시 pts/0
    마지막 로그인 실패: 수  6월 25 06:36:47 KST 2025 14.103.76.234에서 시작 일시 ssh:notty 
    마지막 로그인 후 226 번의 로그인 시도가 실패하였습니다.
                 ~~~~~~~~~~~~~~~~~~~~~~

     

     

     

    1) Fail2Ban 설치하기

     

    # EPEL 저장소 추가
    sudo dnf install epel-release -y
    
    # Fail2Ban 설치
    sudo dnf install fail2ban -y

     

     

     

     

    2) Fail2Ban 설정

     

     

    Fail2Ban 주요 설정 파일: /etc/fail2ban/jail.conf

     

    이 파일을 직접 수정하는 것을 권장되지 않고 jail.local 파일을 생성하여 기본 설정을 재정의하거나 새로운 설정을 추가하는 것이 좋다고 합니다. 이렇게 하면 Fail2Ban이 업데이트될 때 변경 사항이 덮어 쓰이는 것을 방지할 수 있다고 하네요.

     

     

    기본 설정 파일을 jail.local로 복사

    sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

     

     

    jail.local 파일 편집

    sudo nano /etc/fail2ban/jail.local
    # 전역 설정 조정 ([DEFAULT] 섹션 - 선택 사항이지만 권장)
    # [DEFAULT] 섹션에서 이 줄들을 찾아 주석을 해제하거나 수정합니다.
    bantime = 1h        ; 1시간(3600초) 동안 차단
    findtime = 10m      ; 10분 이내의 실패 시도 확인
    maxretry = 3        ; 3회 실패 시도 후 차단
    
    
    # SSH Jail 활성화 및 설정 ([sshd] 섹션)
    [ssh-iptables]
    enabled = true
    port = ssh              ; 또는 사용자 지정 SSH 포트 (예: 2222)
    logpath = %(sshd_log)s  ; RHEL 기반 시스템에서 /var/log/secure로 올바르게 해석됩니다.
    maxretry = 3            ; sshd에만 적용되는 maxretry. 전역 설정과 다르게 설정하고 싶을 때 사용.

     

     

     

     

    3) 시작 및 자동실행 설정

     

    # 시작
    sudo systemctl start fail2ban
    
    # 자동실행 설정
    sudo systemctl enable fail2ban
    
    # 상태 확인
    sudo systemctl status fail2ban

     

     

     

     

     


    4. Node.JS 및 필수도구 설치하기

     

    React로 만들어진 애플리케이션을 실행하기 위한 서버 환경(백엔드 서버)인 Node.js를 설치합니다.

    NVM(Node Version Manager)을 사용하면 다양한 Node.js 버전을 쉽게 관리할 수 있습니다.

     

     

     

    NVM 설치 스크립트 실행

     

    NVM GitHub 저장소에서 최신 설치 스크립트 명령어를 확인하여 실행합니다. (아래는 예시)

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

     

    또는

    curl -sL https://rpm.nodesource.com/setup_20.x | sudo bash -

     

     

     

    설치 후, 터미널에 NVM 환경을 로드하라는 메시지가 나올 수 있습니다. 다음 명령어를 실행하거나, 터미널을 새로 열면 적용됩니다.

    source ~/.bashrc
    # 또는 source ~/.nvm/nvm.sh

     

     

     

     

    최신 LTS 버전 Node.js 설치

     

    NVM을 사용하여 안정적인 최신 LTS(Long Term Support) 버전을 설치합니다.

    nvm install --lts
    nvm use --lts
    nvm alias default 'lts/*' # 기본 Node.js 버전을 LTS로 설정

     

     

    간단하게 설치하려면, 

    sudo dnf install nodejs -y

     

     

     

    설치확인

     

    버전이 표시되면 설치 성공입니다.

    node -v
    npm -v

     

     

     

     

    Git 설치


    코드 관리를 위해 Git을 설치합니다.

    sudo dnf install git -y

     

     

     

     

     

     

     


    5. 백엔드 프록시 서버 구축

     

    Gemini API 키를 안전하게 사용하기 위해, 클라이언트(브라우저)가 직접 API를 호출하는 대신 백엔드 프록시 서버를 통해 호출하도록 합니다. API 키는 이 백엔드 서버에만 안전하게 보관됩니다.

     

     

     


    1) 백엔드 프로젝트 디렉토리 생성 및 이동


    사용자의 홈 디렉토리에 백엔드 프로젝트 폴더를 만듭니다.

    mkdir ~/build-app-backend
    cd ~/build-app-backend

     

     

     

    2) Node.js 프로젝트 초기화


    package.json 파일을 생성합니다.

    npm init -y

     

     

     

     

    3) 필수 패키지 설치


    Express (웹 프레임워크), @google/genai (Gemini API SDK), dotenv (환경변수 관리), cors (Cross-Origin Resource Sharing)를 설치합니다.

    npm install express @google/genai dotenv cors

     

     

     

     

     

    4) 백엔드 서버 코드 작성 (server.js)

     

    이 파일은 Build Apps에서 생성하여 준 것을 서버로 복사해 넣었습니다.
    이 파일의 내용은 아래 XML 변경사항 부분에서 제공됩니다. 주요 기능은 다음과 같습니다:

    • Express 앱 설정
    • CORS 설정 (모든 도메인 또는 특정 도메인에서의 요청 허용)
    • API 키를 process.env.API_KEY 환경 변수에서 로드
    • /api/generate-text 와 같은 API 엔드포인트 생성. 이 엔드포인트가 클라이언트의 요청을 받아 Gemini API에 전달하고 응답을 반환.

     

     

     

    5) .env 파일 생성 (API 키 저장)

     

     

    Gemini API Key 발급

     

    Google Ai Studio 에서 오른쪽 위의 Get API Key를 클릭하여 발급받습니다.

     

     

     

    Gemini API Key 저장

    프로젝트 루트(~/build-app-backend)에 .env 파일을 만들고 Gemini API 키를 저장합니다.

    echo 'API_KEY="여기에_실제_Gemini_API_키를_입력하세요"' > .env

     

    중요: 이 파일은 Git에 포함되지 않도록 .gitignore에 추가해야 합니다.

     



     

     

    .gitignore 파일 생성


    node_modules 폴더와 .env 파일을 Git 추적에서 제외합니다.

    echo "node_modules/" > .gitignore
    echo ".env" >> .gitignore

     

     

     

     

     

    백엔드 서버 로컬 테스트 (선택 사항)


    Node.js 서버가 정상적으로 실행되는지 확인합니다. (예: node server.js). Ctrl+C로 종료합니다.

    $ node server.js
    Backend server listening at http://localhost:3001

     

     


    systemd 서비스 생성 (백엔드 앱 자동 실행 및 관리)


    백엔드 Node.js 애플리케이션이 서버 부팅 시 자동으로 시작되고 안정적으로 실행되도록 systemd 서비스를 만듭니다.
    서비스 파일 내용은 아래 XML 변경사항 부분에서 제공됩니다. (barista-backend.service)


    이 파일을 /etc/systemd/system/barista-backend.service 경로에 sudo 권한으로 생성합니다.

    [Unit]
    Description=Google Ai Studio Build Apps Backend Proxy Server
    # Documentation=https://도메인 (선택 사항: 문서 URL)
    After=network.target
    
    [Service]
    User=사용자명
    Group=사용자명
    WorkingDirectory=/home/사용자명/build-app-backend
    
    # NVM을 통해 설치된 Node.js의 정확한 경로를 사용해야 합니다.
    # 사용자명으로 로그인 후 'nvm which current' 또는 'which node' (nvm use 후) 명령으로 확인 가능
    ExecStart=/home/사용자명/.nvm/versions/node/v22.17.0/bin/node /home/사용자명/build-app-backend/server.js
    Restart=always
    RestartSec=10
    EnvironmentFile=/home/사용자명/build-app-backend/.env
    # Environment=NODE_ENV=production (선택 사항: 프로덕션 환경 명시)
    
    [Install]
    WantedBy=multi-user.target

     

     


    서비스 등록 및 시작

    sudo systemctl daemon-reload
    sudo systemctl enable barista-backend.service
    sudo systemctl start barista-backend.service
    sudo systemctl status barista-backend.service  # 상태 확인

     

     

     

     

     

     


    6. 프론트엔드 애플리케이션 배포 및 수정

     

     

    1) 프론트엔드 파일 배포 디렉토리 생성


    Nginx가 웹 파일을 서비스할 기본 경로를 설정합니다.

    sudo mkdir -p /var/www/도메인/html

     

     

     

     

    2) 기존 프론트엔드 파일 업로드:


    로컬 컴퓨터에 있는 현재 애플리케이션의 모든 파일과 폴더들을 서버의 /var/www/도메인/html 디렉토리로 복사합니다. 바로 복사를 할 수 없어서 /tmp/frontend_files 라는 임시 폴더로 복사한 후 서버에서 다시 /var/www/도메인/html 로 이동시켰습니다.

     


    예시 (scp 사용, 프로젝트 폴더에서 터미널 실행):

    scp -r * 사용자이름@your_server_ip:/tmp/frontend_files
    
    sudo mv /tmp/frontend_files/* /var/www/도메인/html/
    sudo rm -rf /tmp/frontend_files

     

     

     

     

    3) 파일 권한 설정

    sudo chown -R nginx:nginx /var/www/도메인/html
    sudo chmod -R 755 /var/www/도메인/html

     

     

     

     

     

    4) 프론트엔드 코드 수정 (App.tsx)


    이 부분은 Google Ai Studio Bulder에서 처리해 줍니다. 

     

     

     

     

     


    7. 웹서버 세팅하기

     

     

    1) Nginx 웹서버 설치

     

    sudo dnf install nginx -y

     

     

     

     

    2) 서비스 시작 및 자동실행 등록하기

     

    # 설치된 Nginx 웹 서버 서비스를 시작합니다.
    ssudo systemctl start nginx
    
    # 시스템 재부팅 시 Nginx 서비스가 자동으로 시작되도록 설정합니다.
    sudo systemctl enable nginx
    
    # Nginx 서비스의 상태를 확인합니다. active (running)으로 표시되면 정상입니다.
    # 상태보기에서 빠져나가지 않을 경우 Q를 누르세요.
    sudo systemctl status nginx

     

     

     

     

    3) 방화벽 설정

     

    http와 https 접속을 허용하기 위한 기본적인 방화벽 설정입니다.

    # 방화벽 firewalld 실행하기
    # 방화벽이 꺼져있으면 FirewallD is not running 에러 발생
    sudo systemctl start firewalld
    sudo systemctl enable firewalld
    
    
    # HTTP 서비스 허용
    sudo firewall-cmd --permanent --add-service=http
    
    # HTTPS (보안 웹) 서비스도 함께 허용
    sudo firewall-cmd --permanent --add-service=https
    
    # 방화벽 규칙 적용: (이 명령을 실행해야 위에 추가한 규칙이 실제로 적용됩니다)
    sudo firewall-cmd --reload
    
    # 방화벽 서비스 목록 확인 (선택 사항)
    sudo firewall-cmd --list-all

     

     

     

     

     

    4) 웹서버 접속 시험

     

    웹브라우저 주소창에 서버 ip 주소 또는 domain을 입력해서 웹서버가 작동 중인지 확인합니다. Nginx의 기본 환영 페이지가 보인다면 Nginx가 성공적으로 설치 및 실행되었고 방화벽도 올바르게 설정된 것입니다.

     

    Nginx의 기본 웹 문서 루트는 /usr/share/nginx/html 입니다. 이 디렉토리에 index.html 파일이 있습니다.

     

     

     

     

     

    5) 웹문서 디렉토리 설정

     

    실제 웹페이지를 올릴 디렉토리를 만들고 접속을 테스트하기 위해 간단하게 index.html 파일을 만들어서 올려보겠습니다. 

     

     

     

    디렉토리 만들기

    sudo mkdir -p /var/www/examstaff.com/html

     

     

    샘플 index.html 파일 만들기

    sudo nano /var/www/examstaff.com/html/index.html

     

    # index/html 내용

    <!DOCTYPE html>
    <html lang="ko">
    <head>
        <meta charset="UTF-8"> 
        <title>환영합니다.</title>
    </head>
    <body>
        <h1>서버에서 Nginx 웹서버 프로그램이 정상 작동하고 있습니다.</h1>
        <p>지금 보시는 내용은 테스트 페이지입니다.</p>
    </body>
    </html>

     

     

    디렉토리 권한 설정

    sudo chown -R nginx:nginx /var/www/examstaff.com

     

     

    SELinux 컨텍스트 설정 (매우 중요)

    sudo chcon -R -t httpd_sys_content_t /var/www/examstaff.com
    sudo restorecon -Rv /var/www/examstaff.com

     

     

     

     

     

    6) 가상호스트 설정 

     

     

    기존설정파일 백업

    sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

     

     

     

    기존 default.conf 비활성화 (선택 사항)

    Nginx는 /etc/nginx/conf.d/default.conf 파일을 기본적으로 사용합니다. 새로운 Server Block을 만들 것이므로, 이 파일이 있을 경우 비활성화하거나 수정하는 것이 좋습니다.

    sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.disabled
    
    # default.conf 파일이 없을 때 발생하는 에러. 
    mv: cannot stat '/etc/nginx/conf.d/default.conf': No such file or directory

     

     

     

     

    새로운 Server Block 설정 파일 생성

    /etc/nginx/conf.d/ 디렉토리에 도메인 이름으로 설정 파일을 만듭니다.

    sudo nano /etc/nginx/conf.d/examstaff.com.conf
    
    # 또는
    sudo vi /etc/nginx/conf.d/examstaff.com.conf

     

     

    # 파일내용

    server {
        listen 80; # HTTP 포트
        listen [::]:80; # IPv6 지원
    
        server_name examstaff.com www.examstaff.com; # 도메인 이름 지정
    
        root /var/www/examstaff; # 웹 문서 루트 디렉토리
        index index.html index.htm index.nginx-debian.html; # 기본 색인 파일
    
        location / {
            try_files $uri $uri/ =404; # 파일이 없으면 404 에러
        }
    
        # 에러 로그 및 접근 로그 경로 (선택 사항, 기본 로그 사용 가능)
        error_log /var/log/nginx/examstaff.com_error.log warn;
        access_log /var/log/nginx/examstaff.com_access.log combined;
    }

     

     

     

     

    Nginx 설정구문 검사

    설정 파일에 문법적 오류가 없는지 검사합니다.

    sudo nginx -t

     

     

    # 결과메시지: syntax is ok , test is successful 이라고 나오면 정상. 아니면 수정

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful

     

     

     

     

    Nginx 서비스 재시작

    sudo systemctl restart nginx

     

     

     

     

    웹사이트 접속 확인

    주소창에 주소를 입력하여 샘플 index.html 내용이 보이면 성공입니다.

     

     

     

     

     

    7) HTTPS (SSL/TLS) 설정 (필수 사항)

     

    실제 서비스에서는 HTTPS를 사용하는 것이 필수적입니다. Certbot을 사용하여 Let's Encrypt 무료 SSL 인증서를 발급받는 것이 일반적입니다.

     

     

    Certbot 설치

    sudo dnf install certbot python3-certbot-nginx -y

     

     

    SSL 인증서 발급 및 Nginx 설정 자동화

    sudo certbot --nginx -d examstaff.com -d www.examstaff.com

     

     

    Certbot이 Nginx 설정을 자동으로 수정하여 HTTPS를 활성화하고 HTTP 요청을 HTTPS로 리디렉션하는 규칙을 추가해 줄 것입니다.
    이 과정에서 이메일 주소 입력, 서비스 약관 동의, 리디렉션 여부 등을 묻는 질문에 답변해야 합니다.

    Enter email address (used for urgent renewal and security notices)
     (Enter 'c' to cancel): 이메일 주소 입력
     
    
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Please read the Terms of Service at
    https://letsencrypt.org/documents/LE-SA-v1.5-February-24-2025.pdf. You must
    agree in order to register with the ACME server. Do you agree?
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    (Y)es/(N)o: y
    
    
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Would you be willing, once your first certificate is successfully issued, to
    share your email address with the Electronic Frontier Foundation, a founding
    partner of the Let's Encrypt project and the non-profit organization that
    develops Certbot? We'd like to send you email about our work encrypting the web,
    EFF news, campaigns, and ways to support digital freedom.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    (Y)es/(N)o: y
    
    # 정상적으로 처리
    Account registered.
    Requesting a certificate for examstaff.com and www.examstaff.com
    Successfully received certificate.
    Certificate is saved at: /etc/letsencrypt/live/examstaff.com/fullchain.pem
    Key is saved at:         /etc/letsencrypt/live/examstaff.com/privkey.pem
    This certificate expires on 2025-09-23.
    These files will be updated when the certificate renews.
    Certbot has set up a scheduled task to automatically renew this certificate in the background.
    
    Deploying certificate
    Successfully deployed certificate for examstaff.com to /etc/nginx/conf.d/examstaff.com.conf
    Successfully deployed certificate for www.examstaff.com to /etc/nginx/conf.d/examstaff.com.conf
    Congratulations! You have successfully enabled HTTPS on https://examstaff.com and https://www.examstaff.com
    
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    If you like Certbot, please consider supporting our work by:
     * Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
     * Donating to EFF:                    https://eff.org/donate-le
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

     

     

     

     

    자동갱신 테스트

    sudo certbot renew --dry-run

     

     

    # 테스트 결과 성공

    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Processing /etc/letsencrypt/renewal/examstaff.com.conf
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Account registered.
    Simulating renewal of an existing certificate for examstaff.com and www.examstaff.com
    
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Congratulations, all simulated renewals succeeded: 
      /etc/letsencrypt/live/examstaff.com/fullchain.pem (success)
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

     

     

     

     

    HTTPS 접속 성공

     

    웹브라우저에서 주소를 입력하여 접속하면 아래와 같이 https:// 로 연결된 것을 확인할 수 있습니다. 

     

     

     

     

     

    빌드과정에 대한 내용은 아래 글을 참조하시기 비랍니다. 

     

    https://creatorjoseph.com/434#google_vignette

     

    Google AI Studio Build - Applicaton Build for WebApp(Webserver)

    Google Ai Studio의Build에서 만든 앱을 웹서버에 올려서 웹앱으로 사용하기 위한 빌드과정입니다. Google Ai Studio Build에서 만든 앱을 웹 서버에 배포하는 과정에서 '. tsx' 파일이 웹에서 직접 실행되지

    creatorjoseph.com

     

     

     

     

     

     

     

    저의 작업과정을 순서대로 기록해 놓은 것으로 똑 같이 진행해도 오류가 날 수 있으며 

    그렇게 발생하는 오류는 Googl Ai Studio Build와 잘 이야기(?) 하셔서 해결해 나가시기 바랍니다. 

     

     

     

    반응형

    댓글

    쿠팡 파트너스로 활동하고 있으며 일정액의 수수료를 제공받고 있습니다.