82 lines
1.5 KiB
Markdown
82 lines
1.5 KiB
Markdown
# 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
|
|
|