# Creare un server per più website statici per questo esempio scaricheremo i siti dal web usando (https://forgit.patachina.it/Fabio/website-downloader.git) ## Installazione locale 1. installare i packages per il server npm ```sh npm ci install ``` 2. inserire i parametri del server nel file .env ```sh TYPE=http HOST=192.168.1.3 PORT=3600 URL=https://mys.patachina2.casacam.net ``` 3. creare la dir dei siti ```sh mkdir -p home/sites ``` 4. avviare il server ```sh node server.js ``` ## Installazione su Docker 1. creare l'immagine "sites" ```sh sudo docker build -t sites . ``` 2a. lanciare con docker-compose ```sh sudo docker compose up -d ``` 2b. lanciare con portainer ```sh services: sites: image: sites:latest container_name: sites restart: unless-stopped ports: - 3600:3000 volumes: - /home/nvme/dockerdata/sites:/usr/src/app/home/sites environment: NODE_ENV: production PORT: 3000 HOST: 0.0.0.0 TYPE: http URL: https://mys.patachina2.casacam.net ``` ## Modifiche ### Modifica del file server.js Se si modifica il file server.js esegui ```sh make_server_docker.sh ``` creerà il server_docker.js necessario per il docker commentando le righe che caricano il file .env necessario quando si è in locale ma che vanno rimosse con docker in quanto questi parametri vengono passati direttamente dalle enviroments di docker compose ### Siti salvati con docker I siti sono in una dir esterna definita dai volumes