Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


My Idlers - Self-hosted web app for your servers, shared hosting and domain information
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

My Idlers - Self-hosted web app for your servers, shared hosting and domain information

My Idlers is a web app for displaying, organizing and storing information about your servers (VPS), shared hosting and domains.

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

Sample page (Add/Edit/Update/Delete disabled)

GitHub repo

Install instructions

Notes

Features

Add servers
Add shared hosting
Add domains
Auto-suggest locations
Auto-suggest providers
Get YABs data from output
Save the YABs output
Update YABs disk & network speeds (History storing)
Save & view YABs output
Next due date system
Multi-currency compatibility
Multi payment-term compatibility
Pre-defined operating systems
Assign tags
Assign notes
Assign server type (KVM, OVZ, LXC & dedi)
Easy to edit values
Order by table
Search items
Tally/stats card
One-page design

Screenshots

«1

Comments

  • nice works. thanks.

  • aRNoLDaRNoLD Member
    edited January 2021

    Delete server data, in the domain section, should be delete domain info? And the term, for domain registration, is normally annual or plus.

    Imgur

  • @aRNoLD said:
    Delete server data, in the domain section, should be delete domain info? And the term, for domain registration, is normally annual or plus.

    Thanks.

    12c9ea82a1447014701142e2bc59e9c5f603fb79

    a89d125f7c798f286bf5805e03b7cb850bb8674e

  • codydobycodydoby Member
    edited January 2021

    Cool. Looking forward some function of monitoring real-time
    status of each server. https://github.com/BotoX/ServerStatus

  • Nice new version of https://github.com/seikan/NodeList
    Just the design needs some improvements on mobile (like navigation).

  • 1.2 changes:

    Link

    If you have version 1.1 or less installed please run update.sql

    Added table view type (use switcher icon to change to this view)
    Added auto get IPv4/IPv6 based on hostname (Click icon at hostname input)
    Added up/down status (Click OS icon)
    Updated the order by table for better formatting
    Removed unused buttons from the CSS
    Updated Minor style changes
    Updated update.sql for pre-existing installations only.
    Updated when type DEDI selected "is_dedi" will be toggled
    Updated IPv4 no longer required field
    Fixed no location and/or provider causing uneven cards
    Updated delete labels
    Updated domain terms to be annual and longer only
    Fixed error when all speed tests are "busy"
    Updated my_idlers.sql for changes
    

    New table view:

  • Cool. Waiting for some user authentication. If it is guaranteed that only I can enter data, then I will show my data to others as soon as possible. Of course also bring the address of the project

  • i am getting this error:
    [Fri Jan 29 10:31:06.118280 2021] [proxy_fcgi:error] [pid 14151:tid 140464573355776] [client 94.21x5:0] AH01071: Got error 'PHP message: PHP Parse error: syntax error, unexpected 'string' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /home/admin/web/x/public_html/servers/class.php on line 3091'

  • @sander815 said:
    i am getting this error:
    [Fri Jan 29 10:31:06.118280 2021] [proxy_fcgi:error] [pid 14151:tid 140464573355776] [client 94.21x5:0] AH01071: Got error 'PHP message: PHP Parse error: syntax error, unexpected 'string' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /home/admin/web/x/public_html/servers/class.php on line 3091'

    PHP version?

  • 7.3

  • It looks like really good. Thank You! :)

    It would be good an extra, optional field for the VM/server name (nickname): domain + server 'name'. Maybe I'm alone with it, but my VM's usually get a 'name', (for example: alpha beta, gamma.. mars, zeus.. etc). It help identify and manage them, and sometimes the hosted main domain/subdomain is not the same with the server 'nickname'.

    @codydoby said: Cool. Waiting for some user authentication.

    A simple .htaccess is not help to solve it?

  • aleastyaleasty Member
    edited January 2021

    Cool, now hackers can find idle and probably unmaintained free-to-take over VPS' easily.

    Please don't use this if you don't actively maintain your servers.

    OP, nice idea still.

  • Jesus tap-dancing christ, why are you making PHP emit all that HTML and you're mixing inline db calls with those to boot.

  • My eyes! They're now full of 🩸.

    @corbpie well done, so much manual work but the time you've spend writing this line by line could be done in a few hours by using any PHP framework of your choice.

    Doesn't make sense. Fake news you'd say.

    I really love how some people still making their own framework.

    function openTag, function closeThatTag and so on. 🤣
    

    Reinventing the wheel never going out even in 2021 after decades of having frameworks for each use-case.

  • Nice

  • @aleasty said:
    Cool, now hackers can find idle and probably unmaintained free-to-take over VPS' easily.

    Please don't use this if you don't actively maintain your servers.

    OP, nice idea still.

    Why would you expose this to the public? That seems like something the user does and not the responsibility of the user. I'm scared for you if you don't expect to provide security for yourself and expect it all from apps you use.

  • I kinda wanted to give this a try then I read about MySQL. Why would I run mysql on my idle boxes?! Why this is not sqlite file or something :(

  • I've installed it today, it's really useful ^^.

    Had 4 issues:

    • had to check web logs to see that my MySQL credentials were not good ; should show an error directly on the website
    • was not able to edit a provider set on a domain so i had to change it manually in MySQL directly
    • was not able to delete a domain
    • button switch to table is not able to go back to cards view ; instead it just repeat table again and again and again
    Thanked by 1corbpie
  • @o_be_one said: was not able to delete a domain


    3de0b0956cfd9801869fa879186cd07b4643a4fd

    @o_be_one said: button switch to table is not able to go back to cards view ; instead it just repeat table again and again and again

    Either a cached old scripts.min.js file or fixed here: c882d4702656cd5568b379f93c591b9252539e9d

    as example website is working fine

    @o_be_one said: was not able to edit a provider set on a domain so i had to change it manually in MySQL directly

    @o_be_one said: had to check web logs to see that my MySQL credentials were not good ; should show an error directly on the website

    Noted and will look at, thanks.

    Thanked by 1o_be_one
  • codydobycodydoby Member
    edited January 2021

    @TimboJones said:

    @aleasty said:
    Cool, now hackers can find idle and probably unmaintained free-to-take over VPS' easily.

    Please don't use this if you don't actively maintain your servers.

    OP, nice idea still.

    Why would you expose this to the public? That seems like something the user does and not the responsibility of the user. I'm scared for you if you don't expect to provide security for yourself and expect it all from apps you use.

    I feel that this application can add optional settings so that all the information of the service released by the administrator, some can be seen by the public, and some cannot be seen by the public. For example, performance testing. This is not very useful for our own purposes. I feel that it is more of reference value, so it is necessary to show it to everyone, so that sometimes there is no need to copy and paste some messy log text. At the same time, for IP address or the SSH port of the server, we don't want to be seen by the public, so these can be added with hidden functions.

    It mainly depends on the demand. I think this application is great, but it shouldn’t be used only by ourselves, it should be a demonstration.

  • @titus said:
    It looks like really good. Thank You! :)

    It would be good an extra, optional field for the VM/server name (nickname): domain + server 'name'. Maybe I'm alone with it, but my VM's usually get a 'name', (for example: alpha beta, gamma.. mars, zeus.. etc). It help identify and manage them, and sometimes the hosted main domain/subdomain is not the same with the server 'nickname'.

    @codydoby said: Cool. Waiting for some user authentication.

    A simple .htaccess is not help to solve it?

    I want others to not see the IP of my server and SSH port of that. At the same time, I can only publish information by myself, and others cannot publish information. It is not good idea of making this application a completely private application. It depends entirely on the author’s wishes.

  • @corbpie said: Either a cached old scripts.min.js file or fixed here: c882d4702656cd5568b379f93c591b9252539e9d

    Thank you, i've installed yesterday from the master branch. Will git pull to give it a try ^^.

    I've forgot to mention i use Firefox 85.0 (64 bits) on Windows 10.

  • @corbpie, once its all set can you stick it in a docker?

  • corbpiecorbpie Member
    edited March 2022

    I recently re-made this project onto the Laravel framework:

    This will simplify development and most of the features from the original build are present in V2.

    Using Laravel brings an API endpoint and the possibility to show servers publicly with certain parameters removed.

    2.0 changes:

    Unfortunately you cannot migrate your current install to the new 2.0 version

    • Laravel framework (version 9).
    • Breeze authentication.
    • API GET for any of the CRUD data.
    • Labels (titles/desc) CRUD.
    • Misc services CRUD.
    • DNS CRUD.
    • Ip address CRUD.
    • Reseller hosting.
    • Added Operating systems to DB, Deleting and creating them now possible.
    • Make servers displayable public with config options to hide certain values.
    • Vue JS used where possible.
    • Datatables used on large tables (Locations, labels, and providers).
    • Added caching for home page and servers

    Seeking a project sponsor

    I am seeking at least a 1GB ram, Nvme VPS to host a demo installation of My idlers. In return you will get your provider as the default selection in the create forms, as well as in screenshots.

    My idlers project sponsor

  • webcraftwebcraft Member
    edited March 2022

    Nice work. 👍 Is it possible you add SQLite support? I think Laravel has native support for it. Didn't test yet if changing the settings myself is sufficient.

  • @webcraft said:
    Nice work. 👍 Is it possible you add SQLite support? I think Laravel has native support for it. Didn't test yet if changing the settings myself is sufficient.

    I actually started an attempt to port the old version to sqlite but never had time to really get much work done. I might look into porting this version instead if I get some time to spare, just need to get it installed and move all the data from the old version first.

    Thanked by 1webcraft
  • corbpiecorbpie Member
    edited March 2022

    @webcraft said: Is it possible you add SQLite support? I think Laravel has native support for it. Didn't test yet if changing the settings myself is sufficient.

    @rcy026

    I just tried then using SQLite connection and it seemingly works fine (after renaming conflicting unique indexes).

    in .env have

    DB_CONNECTION=sqlite
    DB_FOREIGN_KEYS=true
    

    Then run:

    touch database/database.sqlite

    php artisan migrate:fresh --seed

    And make sure in php.ini extension=pdo_sqlite is uncommented.

    Thanked by 2webcraft pluto
  • webcraftwebcraft Member
    edited March 2022

    @corbpie said:

    DB_CONNECTION=sqlite
    DB_FOREIGN_KEYS=true
    

    The foreign key flag should not be set I guess. I have just experienced statements errors when testing with SQLite. Despite this, it's working good with SQLite and maybe you can remove the MySQL dependency in the description to avoid confusion since all databases supported natively by Laravel appear to be working with your app.

  • m4num4nu Member, Patron Provider

    Happy to announce that "My Idlers" is now available for free on PikaPods.com. 🎉

    Had to make a basic Dockerfile and adjust some SSL settings. Here my Pull Request to merge those changes back and hopefully get an official container image, @corbpie : https://github.com/cp6/my-idlers/pull/35

  • m4num4nu Member, Patron Provider

    An addendum to my previous pull request, since the Docker startup script would overwrite the database when updating or recreating the container. 😬

    Maybe we can set it up in a way to work without .env file, @corbpie ? I didn't get it working yet because it's needed at least for the APP_KEY. Not an urgent issue though.

Sign In or Register to comment.