Pterodactyl Panel — The Free and Open-Source Self-Hosted Game Control Panel

Looks great, especially the scheduled tasks. I wonder though, why if you wrote PufferPanel are you now making another administration panel?

Thanks for the feedback.

Things just didn’t work at with the other people “working” on the panel who controlled some more important assets, so I left and took my work with me.

We’ve pushed a hotfix to our Docker images to fix an issue reported to us by a user involving certain plugins that make use of Javascript within them (specifically Featherboard).

Your daemons should automatically download and update to these new images are servers are updated and created. If your servers work currently, there is no need to do anything. They will be updated in due time.

Hot-diddily-dog! Its time for another release, this time even closer to production ready! Since everyone likes pictures, here we go.

A much better interface for managing your node’s allocations, and seeing which services are linked to them (as well as assigning aliases).
New Allocations

Better API management for all of your servers, with support for controlling individual servers as a user! (In progress still, basic parts implemented)
New API Management

A massively overhauled web-based filemanager. Forget FTP, forget poorly designed, bulk, unresponsive managers. This manager supports tons of actions, including drop to upload on files, and decompressing files right from the panel.
New Filemanager
File Moving
Upload Drop and Drop

Our resource graphing no longer goes backwards in time randomly… horray!
Pretty Graphs

Take control of your server listing as an admin. Search by specific fields or broad terms.
Server Search

v0.5.0-rc.1 (Bodacious Boreopterus)

This is the first release candidate for [email protected] and is considered to be feature complete. No new features will be added to the 0.5.0 line. This release is focused on finding and fixing any remaining bugs in the system. If there are few or no bugs we will continue on to an official production-ready release.

This release requires [email protected].

Added

  • Foreign keys are now enabled on all tables that the panel makes use of to prevent accidental data deletion when associated with other tables.
  • Javascript changes to prevent crashing browsers when large quantities of data are sent over the websocket to the console. Includes a small popover message on the console to alert users that it is being throttled.
  • Support for ‘ARK: Survival Evolved’ servers through the panel.

Fixed

  • Fixes bug where resetting a user password through the login form would not hold passwords to the same requirements as the rest of the panel (mixed case and at least one numeric character).
  • Fixes misnamed environment variable for Bungeecord Servers (BUNGE_VERSION -> BUNGEE_VERSION).
  • Fixes bug where no error would be displayed when adding a new server with an invalid owner email.
  • Fixes a bug that could allow an admin to delete the default allocation for a server causing all sorts of issues.
  • Databases assigned to a server are now actually deleted when a server is removed.
  • Fixes file uploads being improperly throttled.

Changed

  • Servers are now queued for deletion to allow for cancellation of deletion, as well as run in the background to speed up page loading.
  • Switched to new graphing library to make graphs less… broken.
  • Rebuild triggers are only sent to the node if there is actually something changed that requires a rebuild.
  • Dependencies are now hard-coded into the composer.json file to prevent users installing slightly different versions with different features or bugs.
  • Server related tasks now use the lowest priorty queue to prevent clogging the pipes when there are more important tasks to be run by the panel.
  • Decompressing files now shows a pop-over box that does not dismiss until it is complete.
  • Dates displayed in the file manager are now more user friendly.

Removed

  • Removed online player listing due to inconsistency in query library and an assortment of query related bugs. This will return in future versions when we get it working correctly.
3 Likes

Version 0.5.0 (Bodacious Boreopterus) Has Been Released!

I’m not going to post the full changelog like I normally do because it is enormous, but it can be found here.

If you’ve been on the fence we encourage you to hop on off and start using the best panel you can get. We’re more than happy to help you get your new panel setup, just join us in Discord. Installing the panel takes, on average, no more than 15 minutes from start to cheers.

We also sport one of the most secure server isolation mechanisms, and we’re proud of that. Anyone putting security on back burner because they “aren’t concerned with it at the moment” is playing a dangerous game. Don’t let your hard work and money go to waste just because a developer doesn’t want to secure their software.

Just how seriously do we take security? Servers are run in Docker containers, offering an initial layer of isolation from the core system. On top of this, we utilize many features in docker to lock containers down even more. Container logging disabled: check. Non-root users: check (in fact, users in the container don’t even exist on the host). Read-only root filesystem: check. Resource limits: check. Those are just a few of the steps we’ve taken to lock down servers and isolate them from the system.

So, what are you waiting for, give it a try!

2 Likes

State of the Incubator
Some eggciting news today — we’ve started development on v0.6.0 which focuses on improving remote management of nodes as well as service improvements.

If you’ve been having out in Discord recently you’ve probably seen some back and forth discussions regarding modifications to our current server deployment system. We’re moving to a more repository based implementation when it comes to services and options, as well as implementing support for things such as modpacks and pre-downloaded configurations. One of the biggest issues we currently face is long install times for services such as CS:GO and Ark, mostly due to file sizes. This puts a lot of network pressure on servers, especially if deploying multiple to the same node, or if handling updates.

We’ve started work on a centralized repository interface in the panel that nodes will communicate with. You can upload a compressed archive of files as a “Service Pack (“Pack”)” in the panel, which will then be communicated to nodes. Nodes maintain a local cache of packs, and can download, build, and update packs without any admin involvement. The other cool thing with these packs is that you don’t necessarily have to upload the final product for the pack. We support build scripts which are run inside a docker container of your choosing, which you can then use to handle any other dependency downloads. For example, maybe you want to run a custom modded server, but uploading everything would require a humongous file. You can upload a specific part of that pack, and ten use a build script that will run on the nodes and work with what you’ve uploaded. The final product is then cached on the node until it is determined that it needs to be updated.

This setup is also allowing us to create a more community driven collection of packs which you can share with friends or other administrators (assuming you have the rights to do so). Each pack can be exported as a template which someone can then upload to their own panel. These exports can include either the complete pack (archive and template file), or just the template file which admins can then use to upload their own archive to.

I must say…impressive.

Do you have a demo container up that someone could play in?

1 Like

@Zidane We don’t have a public beta up, but we’re more than happy to setup private instances for people to play with a bit to check it out.

We also have un-offocial docker containers for both the panel and daemon created by @parkervcp and a VM Image that can be used with most VM managers for development and testing purposes that was created by another community member. You can message me or find us on Discord if you’d like to try a live version :slight_smile:

Its been while, but fear not, we aren’t a dead project! In fact, since I announced the release of 0.5.0, we’ve pushed five new updates for the panel to address a few bugs, and implement some smaller features that didn’t need to wait until 0.6.0 such as automatic version checking and more detailed node information. The daemon has also been fixed a few times to address a few conditions race (:stuck_out_tongue:) that were occurring when starting or creating servers.

In terms of 0.6.0 development, not a ton has happened as I’ve been working to get 0.5 nice and stable for everyone before the holidays. We do have a working, albeit very beta, version of 0.6.0 that keeps all of your daemon configurations for services up-to-date on boot, and syncs them with the panel, so one edit on the panel syncs them to all nodes.

We’ve also added some community forums which are just hatching! https://forums.pterodactyl.io

I have had plenty experience with this - it is very user friendly and easy to adjust to after using some of the other panels (multicraft, mcmyadmin). Thanks for the great panel!

2 Likes

Does Pterodactyl work when it comes to modded and forge servers? I didn’t see any of those options when attempting to create a server.

@OmegaJT22 We don’t have any pre-defined images to setup Forge servers currently, but there is one being worked on. For now you’d just have to manually upload the server and modpack to run it.

1 Like

haha i feel so dumb
i want to use it but no clue how to xD wiki shows linux tutorial xD

This is only supported on Ubuntu/Cent/Debian systems, so those are the only tutorials we have. :slight_smile:

As part of our continued efforts to improve Pterodactyl Panel, we’re embarking on a major theme overhaul to accomidate new features in the future, and set us apart from the competition. On our path to [email protected] we’re adding some major backend features and upgrading large parts of our codebase. Aside from this new theme, we’re implementing an events system to allow external modules to hook into the panel without having to touch our files, as well as a much improved services system. One of the biggest changes we’ve made is centralizing service configuration to the panel. Nodes now connect to the panel to require updated configurations for services, allowing you to upgrade your entire herd of daemons at once with a quick reboot.




2 Likes

I know this reply is late, but how would I manually upload a server / modpack?

You can just upload the files through the file manager after making the server @OmegaJT22


Wanted to let everyone know that our most awaited feature is finally shipping down the pipeline: support for packs! You’ll notice they aren’t called Modpacks, and this is because these packs can be used for any game type, and allow you to have a pre-configured set of files to be installed on servers when they are installed.

These packs are all stored and controlled from the panel itself, and daemons contact the panel to get information about the packs and then cache them locally until they are no longer valid, then the daemon re-downloads a corrected version of the pack. This means that you can now offer modpacks to users for Minecraft, as well as have pre-downloaded SRCDS setups to automatically install on your systems to save time.

We’re super excited about these changes, so be on the lookout for a pre-release build in the coming days.

This is pretty awesome I was writing my own scripts and using docker for my network. Are you using docker compose in this?

We do not use docker compose. The daemon handles all docker related interaction and configuration for containers.

Interesting
I’ll have to try this out on my network, I’d be very interested in contributing. I’m glad I ran across this thread!

1 Like