usar nginx como servidor de prueba

cambios:

* compartir los pids permite correr `haini.sh "nginx -s reload"` después
  de iniciar `nginx`, antes no encontraba el pid.

* se reemplazan `darkhttpd` y `nghttp2` en sutty-base-jekyll-theme.

* todos los sitios tienen que terminar con `-jekyll-theme` para
  funcionar.
This commit is contained in:
f 2021-05-08 18:31:13 -03:00
parent 04e13130e3
commit 41b1b8a299
2 changed files with 33 additions and 2 deletions

View file

@ -1,6 +1,9 @@
#!/bin/sh
# Fallar ante cualquier error
set -e
set -E
DIR="`realpath $0 | xargs -r dirname`"
# Por ahora sólo soportamos x86_64
uname -m | grep -q x86_64 || exit 1
@ -28,7 +31,6 @@ function correr() {
bwrap \
--unshare-user-try \
--unshare-ipc \
--unshare-pid \
--unshare-uts \
--unshare-cgroup-try \
--bind "$ENTORNO" / \
@ -82,7 +84,7 @@ function crear_entorno() {
tzdata bash ffmpeg vips file git make \
ruby ruby-bundler ruby-json ruby-bigdecimal ruby-irb ruby-rake \
nodejs yarn \
gnutls-utils nghttp2 \
gnutls-utils nginx \
less"
# Habilitar la instalación de gemas binarias
@ -95,6 +97,14 @@ function crear_entorno() {
echo "Instalando node_modules..."
correr "cd /Sutty/sutty && yarn install"
# Deshabilitar el usuario de nginx
sed -re "/user nginx/d" -i "$ENTORNO/etc/nginx/nginx.conf"
# Crear el directorio del PID
install -dm 755 "$ENTORNO/run/nginx"
# Instalar la configuración
install -m 640 "$DIR/nginx.conf" "$ENTORNO/etc/nginx/http.d/default.conf"
}
crear_entorno

21
nginx.conf Normal file
View file

@ -0,0 +1,21 @@
server {
server_name ~(?<domain>.+).sutty.local;
listen 4000 ssl http2 default_server;
ssl_certificate /Sutty/sutty.local/domain/sutty.local.crt;
ssl_certificate_key /Sutty/sutty.local/domain/sutty.local.key;
root /Sutty/$domain-jekyll-theme/_site;
add_header Cache-Control "no-store; max-age=0";
location /assets/js/ {
proxy_pass http://127.0.0.1:65001;
}
location /sockjs-node/ {
proxy_set_header Connection "upgrade";
proxy_set_header Upgrade $http_upgrade;
proxy_pass http://127.0.0.1:65001;
}
}