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.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
Comments
I made my own cloud control panel with Laravel + AdminLte for application layer. Works well. I still use Solus on the back end though for all the virtualization stuff.
I usually try to keep things very simple.
Stallion as a whole is only like 60k lines of code including all the frontend (js, css, html). Moving to laravel will chop that by 20k just because i'm not having to reinvent the wheel.
Francisco
Yeah that's what I like of Laravel. I'm not yet a guru on it but I'm moving that way. Got tired of doing too many steps that are already done in a Framework such as Laravel and their Eloquent.
It has so many things already done. Authentication? php artisan make:auth , Done.
Slim is also Gorgeous for Rest API. For those looking for simplicity.
I've seen the code. I can assure you that the SolusVM code is some of the worst code I've ever seen. And that says a lot.
One particular example that stayed with me, was the massive abuse of
exec
s all over the place; invoking complex chains of command-line tools (with a bunch of RCE vulnerabilities due to non-existent safety measures) for implementing functionality that could have trivially been - safely! - implemented in PHP directly.SolusVM is, or at least was, quite literally a graphical shell around a bunch of command-line tools. PHP was just used as glue; much of the business logic wasn't even written in PHP.
It's easy to build a VPS control panel. It's much harder to build a generic panel that can also deal with other people's edge cases. It's even harder to actually get other companies to adopt it, in the current fucked-up climate. The problem isn't the technical aspect, it's the non-technical aspects; the fuzzy human factor.
This is most likely why it was simple for @KuJoe; he only needed it to support his own business and usecases, and of course already convinced himself to use it.
yep, well that's apples and oranges, a VPS control panel, probably not so hard, a multi essentially anonymous user front end with API billing panel integrations ip management, 1 click functions for end users, migration elements for admins (I could go on) specifically suited to the hosting industry and then making it possible to import from other panels (the reason no one has dethroned solusvm to date despite the financial incentives) is another case entirley, and not something I believe can be done in 40, 50, 100 or even 400 hours.
Just as an FYI, but when I did my audit years ago this was a fun case I ran into.
They have their
solusvm.conf
file which stores the mysql username/password/database/salt, it's separated by a colon. The smart idea would be to instead just have a $config array and then they can just grab out the keys, but whatever, splitting a string is "fine".The big problem is they didn't use explode() to do the splitting, they literally broke out to shell with
shell_exec
and called cat, cut, and awk for each field. This means this bash monster was called 5 times to get 5 different fields.Instead of just wrapping CURL they have/had this multi thousand line file that "implements" an HTTP request wrapper using fopensocket and parsing.
Francisco
Solus not that good of coding we even do better with our vPanel control however since OpenVZ now EOl we stopped to developing. We may take over with KvM with our panel but I double will be soon since our coder very busy.
Stallion looks hella better than Solus.
Current stallion is nice...and also built on bootstrap 2.0.
I need at the very least to bring it up to whatever the latest bootstrap is :P
Francisco
@Francisco CI is pretty easy to pick up for newbies but laravel is indeed a beast. If you are going to be rewriting, why not python/Django?
Because i'm not a masochist.
My python experience is very limited so i'd rather stick with what I know for core/production stuff :P
Anyway, this is going off topic. Back to PleskVM.
Francisco
Most of that can be done pretty easy, the only major issue would be the import script because SolusVM's database is all over the place (for me it was easier to just use their database scheme as the foundation rather than converting it).
This thread makes me want to build a new open source control panel from scratch now, anybody want to build a theme?
should I rename this thread, "replacing solusvm is easy - see you in 4 years for the same discussion with no action?" haha. (been guilty of it myself)
From Plesk's blog post, they seem to want to do good with it, and I would guess this gives Phill more room to do what he wants since he's with the Plesk team now.
I think I am probably up there as one of their biggest critics, its no secret, but this time, I really do believe we will see some good stuff come out of solusvm.
Also this time I do not expect the price to stay the same, if things improve I don't mind paying more and I don't expect PLESK to swallow the VAT as OnApp did, it was quite an unusual move to begin with and for the past 4 years.
So SolusVM code sucks. But no one else does it better. Other than Virtualizor that seem to develop a lot of features though its just buggy.
If its so easy then do it. Market needs it. Bring some competition and it will make all similar products to evolve as well.
I trust Phill's code and I like him. Keep in mind that he was the main dev and owner but was not the only dev. Though most stuff was done by him.
Anyway its easy to criticize, but what about doing it better? After all the shitty code got them thousands of monthly licenses. Profit.
I'm not the best UI/UX designer of the
LETworld. But I'm sure I can help.I’m integrating https://github.com/tabler/tabler into my Laravel based SaaS, maybe something for you guys to use as well?
That's really cool!
Thank you!
Francisco
Because there are thousands of markets that are easier to enter than this one. We're talking essentially critical core infrastructure here, where people would often rather run the known quantity no matter how broken it is, than to switch to something unknown.
If my interest were just in building a profitable software business, "building a VPS panel" would not be what I'd go for. I suspect it's the same for most competent developers.
When I did more php, I loved CI. It gave a lot without going too heavy on the "thou must". I liked it a lot better than CakePHP.
I keep meaning to read a book on Laravel.
Probably because @Francisco knows php and not python, I'm guessing.
Fuck you all...now I have an itch to write a panel.
Didn't @joepie91 start one at one point?
I'd be honest that I get that itch every time someone opens a solusvm thread.
I'm currently writing a pull based backup system. I've named it 'pulley.bak' :P
About UI/UX, @Francisco is there any reason for you wanting custom design? There are so many good themes available (both paid and free)?
So that we don't look like the rest
The one mentioned above is pretty good. I can likely play with the colours a bit and get a current Stallion feel to it.
That'll be later in the year, but for sure bookmarking it.
Francisco
It sure is easy to whip up a panel given security stuff is met and as many told exec is used obnoxiously.
Name of the panel is not yet confirmed but it supports only KVM
http://pulsestats.io/let/login.png
http://pulsestats.io/let/admin-dashboard.png
http://pulsestats.io/let/admin-images.png
http://pulsestats.io/let/admin-instances.png
http://pulsestats.io/let/admin-settings-01.png
http://pulsestats.io/let/admin-settings-02.png
http://pulsestats.io/let/admin-settings-03.png
http://pulsestats.io/let/admin-settings-04.png
http://pulsestats.io/let/admin-settings-05.png
http://pulsestats.io/let/admin-tasks.png
http://pulsestats.io/let/admin-task-log.png
http://pulsestats.io/let/login.png
http://pulsestats.io/let/user-create-instance.png
http://pulsestats.io/let/user-instance-logs.png
http://pulsestats.io/let/user-instance-manage.png
http://pulsestats.io/let/user-keys.png
http://pulsestats.io/let/user-recipes.png
http://pulsestats.io/let/user-profile.png
If it's ain't opensource'd -> GTFO.
I think you missed the point of a dashboard when 80% of the space is used up with info on 1 server.
You missed the selection list?
I actually find it pretty useful given that we hypervisor is selectable
The dashboard is far from complete though, billing is pending I have the hourly thing going and working on invoices once invoices are done I'll see how to show data on the dashboard.
For the curious minded its VueJS + Laravel REST API for master & Lumen for slave.
Have you temporarily named it Virtkit?