# π SSH λ°°ν¬ κ°μ΄λ **λͺ©ν**: SSHλ‘ μ격 μλ²μ μ§μ μ μνμ¬ νκ²½μ νμ ν ν λ°°ν¬ **λμ**: 178.104.200.7 (κ³΅μΈ IP) / 192.168.123.100 (λ΄λΆ IP) --- ## π μ¬μ μ€λΉ ### 1. SSH ν€ μ€μ (μ΅μ΄ 1ν) #### 1.1 λ‘컬μμ SSH ν€ μμ± ```bash ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -N "" ``` #### 1.2 κ³΅κ° ν€λ₯Ό μ격 μλ²μ λ±λ‘ ```bash ssh-copy-id -i ~/.ssh/id_ed25519.pub kjh2064@178.104.200.7 # λλ λ΄λΆ IP ssh-copy-id -i ~/.ssh/id_ed25519.pub kjh2064@192.168.123.100 ``` #### 1.3 SSH μ°κ²° ν μ€νΈ ```bash ssh -i ~/.ssh/id_ed25519 kjh2064@192.168.123.100 "echo 'β μ°κ²° μ±κ³΅'" ``` --- ## π Step 1: νκ²½ νμ ### μμ€ν μ 보 νμΈ ```bash # SSH μ μ ssh -i ~/.ssh/id_ed25519 kjh2064@192.168.123.100 # μ격 μλ²μμ μ€ν: # βββββββββββββββββββββββββββββββββββββββββββββ # 1. μμ€ν μ 보 uname -a lsb_release -a # 2. λμ€ν¬ μν df -h # 3. μΉ μλ² μν sudo systemctl status nginx # 4. μΉ μλ² κ²½λ‘ ls -la /var/www/quant/ ls -la /var/www/quant/publish/ # 5. Nginx μ€μ νμΈ sudo cat /etc/nginx/sites-available/default | grep -A 10 "location" # 6. ν¬νΈ μν sudo netstat -tuln | grep :80 # 7. μ¬μ©μ κΆν νμΈ id sudo -l ``` ### μμ νκ²½ ``` β Linux (Ubuntu 20.04 λλ κ·Έ μ΄μ) β nginx (1.18 μ΄μ) β /var/www/quant/ λλ ν 리 μ‘΄μ¬ λλ μμ± κ°λ₯ β www-data λλ μ μ¬ μΉ μλ² μ¬μ©μ β sudo κΆν (webmaster κ·Έλ£Ή) ``` --- ## π¦ Step 2: Release λΉλ ```bash # λ‘컬μμ μ€ν cd /c/Temp/data_feed # Release λΉλ dotnet publish -c Release \ -o src/dotnet/QuantEngine.Web/publish # κ²°κ³Ό νμΈ ls -lh src/dotnet/QuantEngine.Web/publish/ ``` --- ## π Step 3: λ°°ν¬ μ€ν¬λ¦½νΈ μ€ν ### λ°©λ² 1: μλ λ°°ν¬ μ€ν¬λ¦½νΈ (κΆμ₯) ```bash # μ€ν¬λ¦½νΈμ μ€ν κΆν λΆμ¬ chmod +x deploy-manual.sh # λ°°ν¬ μ€ν ./deploy-manual.sh 192.168.123.100 # λλ ./deploy-manual.sh 178.104.200.7 ``` **μ€ν¬λ¦½νΈκ° μλμΌλ‘:** - β SSH μ°κ²° νμΈ - β μ격 νκ²½ νμ - β λ°±μ μμ± - β νμΌ μ μ‘ (rsync) - β κΆν μ€μ - β nginx μ¬μμ - β ν¬μ€ μ²΄ν¬ ### λ°©λ² 2: μλ λ°°ν¬ (λ¨κ³λ³) ```bash # 1. SSH μ μ ssh -i ~/.ssh/id_ed25519 kjh2064@192.168.123.100 # μ격 μλ²μμ: # βββββββββββββββββββββββββββββββββββββββββββββ # 2. λ°±μ μμ± sudo mkdir -p /var/www/quant_backup sudo cp -r /var/www/quant/publish \ /var/www/quant_backup/quant_$(date +%Y%m%d_%H%M%S) echo "β λ°±μ μμ± μλ£" # 3. λ°°ν¬ λλ ν 리 μ€λΉ sudo mkdir -p /var/www/quant/publish sudo chmod 777 /var/www/quant/publish # 4. κΆν μ€μ sudo chown -R www-data:www-data /var/www/quant/publish sudo chmod -R 755 /var/www/quant/publish # 5. SSH μ’ λ£ exit ``` ```bash # λ‘컬μμ: νμΌ μ μ‘ rsync -avz --delete \ -e "ssh -i ~/.ssh/id_ed25519" \ src/dotnet/QuantEngine.Web/publish/ \ kjh2064@192.168.123.100:/var/www/quant/publish/ ``` ```bash # λ€μ SSH μ μ ssh -i ~/.ssh/id_ed25519 kjh2064@192.168.123.100 # μ격 μλ²μμ: # βββββββββββββββββββββββββββββββββββββββββββββ # 6. nginx μ¬μμ sudo systemctl restart nginx # 7. μν νμΈ sudo systemctl status nginx # μ’ λ£ exit ``` --- ## β Step 4: λ°°ν¬ κ²μ¦ ```bash # 1. HTTP μν νμΈ curl -I http://178.104.200.7/quant/ # λλ curl -I http://192.168.123.100/quant/ # κΈ°λ: HTTP/1.1 200 OK # 2. MudBlazor λ‘λ νμΈ curl -s http://178.104.200.7/quant/ | grep -c "MudBlazor" # κΈ°λ: > 0 # 3. νμ΄μ§ μ λͺ© νμΈ curl -s http://178.104.200.7/quant/ | grep -o "