replace nyone.net to nyone.app
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
# Fresh Ubuntu VPS Deployment for nyone.net
|
||||
# Fresh Ubuntu VPS Deployment for nyone.app
|
||||
|
||||
This guide explains how to deploy Nyone from only the `dockerized/` folder on a fresh Ubuntu VPS.
|
||||
|
||||
It assumes:
|
||||
|
||||
- App domain: `nyone.net`
|
||||
- HLS playback domain: `hls.nyone.net`
|
||||
- RTMP ingest URL: `rtmp://nyone.net:1935`
|
||||
- App domain: `nyone.app`
|
||||
- HLS playback domain: `hls.nyone.app`
|
||||
- RTMP ingest URL: `rtmp://nyone.app:1935`
|
||||
- Docker Apache is private on `127.0.0.1:8080`
|
||||
- Host Nginx handles public HTTP, HTTPS, and SSL certificates
|
||||
|
||||
@@ -17,8 +17,8 @@ The application repository itself does not need to exist on the server before de
|
||||
Create DNS records before requesting SSL certificates:
|
||||
|
||||
```text
|
||||
nyone.net A <VPS_PUBLIC_IPV4>
|
||||
hls.nyone.net A <VPS_PUBLIC_IPV4>
|
||||
nyone.app A <VPS_PUBLIC_IPV4>
|
||||
hls.nyone.app A <VPS_PUBLIC_IPV4>
|
||||
```
|
||||
|
||||
If your DNS provider has an HTTP proxy mode, make sure TCP `1935` still reaches the VPS directly for RTMP. With Cloudflare, that usually means the RTMP hostname must be DNS-only, not proxied.
|
||||
@@ -26,8 +26,8 @@ If your DNS provider has an HTTP proxy mode, make sure TCP `1935` still reaches
|
||||
Wait until DNS resolves from the VPS or your local machine:
|
||||
|
||||
```bash
|
||||
dig +short nyone.net
|
||||
dig +short hls.nyone.net
|
||||
dig +short nyone.app
|
||||
dig +short hls.nyone.app
|
||||
```
|
||||
|
||||
## 2. SSH into the VPS
|
||||
@@ -122,7 +122,7 @@ Edit the Docker deployment environment:
|
||||
nano /opt/nyone/dockerized/.env
|
||||
```
|
||||
|
||||
Use these values for `nyone.net`:
|
||||
Use these values for `nyone.app`:
|
||||
|
||||
```env
|
||||
COMPOSE_PROJECT_NAME=nyone
|
||||
@@ -131,8 +131,8 @@ GIT_REPOSITORY_URL=git@github.com:your-org/nyone.git
|
||||
GIT_REF=main
|
||||
|
||||
PUBLIC_SCHEME=https
|
||||
APP_DOMAIN=nyone.net
|
||||
HLS_DOMAIN=hls.nyone.net
|
||||
APP_DOMAIN=nyone.app
|
||||
HLS_DOMAIN=hls.nyone.app
|
||||
APP_HTTP_PORT=127.0.0.1:8080
|
||||
RTMP_PUBLIC_PORT=1935
|
||||
|
||||
@@ -239,7 +239,7 @@ tee /etc/nginx/sites-available/nyone-temp.conf >/dev/null <<'EOF'
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
server_name nyone.net hls.nyone.net;
|
||||
server_name nyone.app hls.nyone.app;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
@@ -263,15 +263,15 @@ Request the certificate:
|
||||
```bash
|
||||
certbot certonly --webroot \
|
||||
-w /var/www/certbot \
|
||||
-d nyone.net \
|
||||
-d hls.nyone.net
|
||||
-d nyone.app \
|
||||
-d hls.nyone.app
|
||||
```
|
||||
|
||||
The certificate files should be under:
|
||||
|
||||
```text
|
||||
/etc/letsencrypt/live/nyone.net/fullchain.pem
|
||||
/etc/letsencrypt/live/nyone.net/privkey.pem
|
||||
/etc/letsencrypt/live/nyone.app/fullchain.pem
|
||||
/etc/letsencrypt/live/nyone.app/privkey.pem
|
||||
```
|
||||
|
||||
## 10. Install final Nginx proxy config
|
||||
@@ -281,7 +281,7 @@ tee /etc/nginx/sites-available/nyone.conf >/dev/null <<'EOF'
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
server_name nyone.net hls.nyone.net;
|
||||
server_name nyone.app hls.nyone.app;
|
||||
|
||||
location /.well-known/acme-challenge/ {
|
||||
root /var/www/certbot;
|
||||
@@ -295,10 +295,10 @@ server {
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen [::]:443 ssl http2;
|
||||
server_name nyone.net;
|
||||
server_name nyone.app;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/nyone.net/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/nyone.net/privkey.pem;
|
||||
ssl_certificate /etc/letsencrypt/live/nyone.app/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/nyone.app/privkey.pem;
|
||||
|
||||
client_max_body_size 100M;
|
||||
|
||||
@@ -322,10 +322,10 @@ server {
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
listen [::]:443 ssl http2;
|
||||
server_name hls.nyone.net;
|
||||
server_name hls.nyone.app;
|
||||
|
||||
ssl_certificate /etc/letsencrypt/live/nyone.net/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/nyone.net/privkey.pem;
|
||||
ssl_certificate /etc/letsencrypt/live/nyone.app/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/nyone.app/privkey.pem;
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:8080;
|
||||
@@ -362,7 +362,7 @@ certbot renew --dry-run
|
||||
Check the app health endpoint:
|
||||
|
||||
```bash
|
||||
curl -I https://nyone.net/up
|
||||
curl -I https://nyone.app/up
|
||||
```
|
||||
|
||||
Check container status:
|
||||
@@ -397,14 +397,14 @@ Do not expose port `9997` on the public firewall.
|
||||
Creators should use:
|
||||
|
||||
```text
|
||||
OBS server: rtmp://nyone.net:1935
|
||||
OBS server: rtmp://nyone.app:1935
|
||||
OBS stream key: <channel-slug>?token=<generated-stream-key>
|
||||
```
|
||||
|
||||
Viewer playback URLs generated by Laravel should look like:
|
||||
|
||||
```text
|
||||
https://hls.nyone.net/<channel-slug>/index.m3u8
|
||||
https://hls.nyone.app/<channel-slug>/index.m3u8
|
||||
```
|
||||
|
||||
## 14. Redeploy after app changes
|
||||
|
||||
Reference in New Issue
Block a user