Подключение code.a2v.space (OpenCode)

📁 ~/Projects/docs-a2v/content/guides/code-a2v-space.md

Архитектура

Mac Studio (localhost:4096)
    → autossh SSH-туннель (-R 8081:localhost:4096)
    → VPS 95.163.232.9:8081
    → nginx HTTPS
    → https://code.a2v.space

Параметры

Параметр Значение
Локальный порт 4096
Туннель порт 8081
pm2 процесс opencode
SSL сертификат /etc/letsencrypt/live/code.a2v.space/

nginx конфиг

server {
    listen 80;
    server_name code.a2v.space;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    server_name code.a2v.space;

    ssl_certificate /etc/letsencrypt/live/code.a2v.space/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/code.a2v.space/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:8081;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

SSL-сертификат

certbot certonly --nginx -d code.a2v.space