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.

1.2 KiB

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 while sqliteDB 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="development"
HOST=":4000"
ADMIN_PASSWORD="secret"
MONITOR_SCRIPTS_DIR="./scripts"
MONITOR_CACHE_TIMEOUT="5s", time.ParseDuration
EOF