my-idlers/README.md
cp6 464b2096c4 Updated Readme
Updated Readme
2022-05-16 16:46:48 +10:00

5.9 KiB

My idlers

A web app for displaying, organizing and storing information about servers (VPS), shared & reseller hosting, domains, DNS and misc services.

Despite what the name infers this self hosted web app isn't just for storing idling server information. By using a YABs output you can get disk & network speed values along with GeekBench 5 scores to do easier comparing and sorting.

Generic badge Generic badge Generic badge Generic badge

Project sponsor

Cloud Five Limited for providing the hosting for demo installation.

2.1.0 changes:

  • Added Seedbox CRUD
  • Added dark mode (settings option. Bootstrap-Night https://vinorodrigues.github.io/bootstrap-dark-5/)
  • Added some foreign keys for certain tables
  • Added functions for IP and label assignments
  • Added functions to forget (clear) cache, preventing chunks of duplicate code
  • Added VMware to server virt select dropdown options
  • Added Kharkiv and Sao Paulo to locations seeder
  • Updated Controllers with DB calls and logic moved to relevant Model
  • Updated DB calls for caching
  • Updated home page view links on recently added

Requires

  • PHP 8 (8.1 recommended)

Features

  • Add servers
  • Add shared hosting
  • Add domains
  • Auto get IP's from hostname
  • Check up/down status
  • Get YABs data from output
  • Compare 2 servers
  • Save & view YABs output
  • Update YABs disk & network results
  • Next due date system
  • Multi currency compatibility
  • Multi payment-term compatibility
  • Pre-defined operating systems
  • Assign labels
  • Assign server type (KVM, OVZ, LXC & dedi)
  • Easy to edit values

Install

  • Run git clone https://github.com/cp6/my-idlers.git into your directory of choice
  • Run composer install
  • Run cp .env.example .env
  • Edit (If needed) MySQL details in .env
  • Run php artisan key:generate
  • Run php artisan make:database my_idlers to create database
  • Run php artisan migrate:fresh --seed to create tables and seed data
  • Run php artisan serve

Update

If you have at least version 2.0 installed:

  • Run git clone https://github.com/cp6/my-idlers.git
  • Run composer install
  • Run php artisan migrate

Run using Docker

docker run \
  -p 8000:8000\
  -e APP_URL=https://... \
  -e DB_HOST=... \
  -e DB_DATABASE=... \
  -e DB_USERNAME=... \
  -e DB_PASSWORD=... \
  ghcr.io/m3nu/my-idlers:latest  # TODO: adjust after official image is set up!
docker exec ... php artisan migrate:fresh --seed --force  # Set up database one time

API endpoints

For GET requests the header must have Accept: application/json and your API token (found at /account)

Authorization : Bearer API_TOKEN_HERE

All API requests must be appended with api/ e.g mydomain.com/api/servers/gYk8J0a7

GET request:

dns/

dns/{id}

domains/

domains/{id}

servers

servers/{id}

labels/

labels/{id}

locations/

locations/{id}

misc/

misc/{id}

networkSpeeds/

networkSpeeds/{id}

os/

os/{id}

pricing/

pricing/{id}

providers/

providers/{id}

reseller/

reseller/{id}

seedbox/

seedbox/{id}

settings/

shared/

shared/{id}

Notes

Public viewable listings

If enabled the public viewable table for your server listings is at /servers/public You can configure what you want viewable at /settings

Due date / due soon

This is simply just a reminder. If the homepage is requested (viewed) when a service is over due date it will get reset to plus the term from the old due date.

E.g if the term is a month then the due date gets updated to be 1 month from the old due date.

Supporting YABS commands:

curl -sL yabs.sh | bash

or

curl -sL yabs.sh | bash -s -- -r

Make sure YABs output starts at the first line which is:

# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #

Screenshots for v2

My idlers screenshot1

My idlers screenshot2

My idlers screenshot3

My idlers screenshot4

My idlers screenshot5

My idlers screenshot6

My idlers screenshot7

My idlers screenshot8