| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- #!/bin/sh
- #
- # Copyright (c) Milan Jurkulák 2024.
- # Contact:
- # e: mimoccc@gmail.com
- # e: mj@mjdev.org
- # w: https://mjdev.org
- #
- service_name="app"
- # store actual dir
- pwd=$(pwd)
- # sw needed
- sudo apt-get install certbot nginx-full nodejs npm ufw yarn
- # stop service
- sudo systemctl stop "service-$service_name"
- sudo systemctl disable "service-$service_name"
- # remove old
- sudo rm -rf "/etc/systemd/system/service-$service_name.service"
- sudo rm -rf "/etc/nginx/sites-available/service-$service_name.nginx"
- sudo rm -rf "/etc/nginx/sites-enabled/service-$service_name.nginx"
- # reload services
- sudo systemctl daemon-reload
- sudo systemctl reload nginx
- # copy things
- sudo mkdir -p "/opt/services/$service_name"
- sudo cp -rf * "/opt/services/$service_name"
- # link things
- sudo ln -s "/opt/services/$service_name/$service_name.service" "/etc/systemd/system/service-$service_name.service"
- sudo ln -s "/opt/services/$service_name/$service_name.nginx" "/etc/nginx/sites-available/service-$service_name.nginx"
- sudo ln -s "/opt/services/$service_name/$service_name.nginx" "/etc/nginx/sites-enabled/service-$service_name.nginx"
- # go to directory
- cd "/opt/services/$service_name" || exit
- # build
- sudo npm install
- sudo npm audit fix
- sudo npm upgrade
- #sudo npm run build
- # go back
- cd "$pwd" || exit
- # start services
- sudo systemctl daemon-reload
- sudo systemctl enable "service-$service_name"
- sudo systemctl start "service-$service_name"
- sudo systemctl reload nginx
|