You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Antonio De Lucreziis 77043f731f | 2 years ago | |
---|---|---|
_frontend | 2 years ago | |
config | 2 years ago | |
database | 2 years ago | |
scripts | 2 years ago | |
server | 2 years ago | |
serverinfo | 2 years ago | |
store | 2 years ago | |
utils | 2 years ago | |
.dockerignore | 2 years ago | |
.gitignore | 2 years ago | |
Dockerfile | 2 years ago | |
README.md | 2 years ago | |
deploy | 2 years ago | |
go.mod | 2 years ago | |
go.sum | 2 years ago | |
main.go | 2 years ago |
README.md
PHC Storage
Web server per gestire la nuova macchina di backup e storage.
Architecture
-
_frontend/
This is a Vite project for building all the static pages used by this app.
-
database/
Module with a
Database
interface and two implementation:memDB
is an in-memory database for testing purposes whilesqliteDB
is a wrapper for working with an SQLite database. -
routes/
Various functions for configuring all the server routes.
Usage
First install the required npm packages
$ cd _frontend
_frontend/ $ npm install
Development
# Development
$ MODE=dev go run -v .
# Development with watcher
$ fd -e go | MODE=dev entr -r go run -v .
Production
First build the _frontend/dist
folder using
$ cd _frontend
$ npm run build
and then
# Production
$ go run -v .
Production with Docker
$ mkdir buckets.local/
$ cat <<EOF > database.local.json
{
"prefixSize": 2,
"dashboardState": {
"widgets": []
},
"buckets": {},
"api-keys": []
}
EOF
$ cat <<EOF > .env
MODE="production"
HOST=":4000"
ADMIN_PASSWORD="secret"
MONITOR_SCRIPTS_DIR="./scripts"
MONITOR_CACHE_TIMEOUT="10s"
EOF