Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pterodactyl/development

Development environment setup for Pterodactyl. This is used internally by our development team to ensure getting Pterodactyl running in a development environment is a painless as possible.
https://github.com/pterodactyl/development

development docker docker-compose pterodactyl

Last synced: 8 days ago
JSON representation

Development environment setup for Pterodactyl. This is used internally by our development team to ensure getting Pterodactyl running in a development environment is a painless as possible.

Awesome Lists containing this project

README

        

# Pterodactyl Development Environment
This repository provides a `docker-compose` based environment for handling local development of Pterodactyl.

**This is not meant for production use! This is a local development environment only.**

> This environment is the official Pterodactyl development environment, in the sense that it is what
I, [`@DaneEveritt`](https://github.com/DaneEveritt) use for working on it. I've not tested it on anything
other than macOS, and I probably haven't documented most of the important bits. Please feel free to open
PRs or Issues as necessary to improve this environment.

### Getting Started
You'll need the following things installed on your machine.

* [Docker](https://docker.io)
* [Mutagen Compose](https://github.com/mutagen-io/mutagen-compose)
* [mkcert](https://github.com/FiloSottile/mkcert)

### Setup
To begin clone this repository to your system, and then run `./setup.sh` which will configure the
additional git repositories, and setup your local certificates and host file routing.

```sh
git clone https://github.com/pterodactyl/development.git
cd development
./setup.sh
```

#### What is Created
* Traefik Container
* Panel & Wings Containers
* MySQL & Redis Containers
* Minio Container for S3 emulation

### Accessing the Environment
Once you've setup the environment, simply run `./beak up -d` to start the environment. This simply aliases
some common Docker compose commands.

Once the environment is running, `./beak app` and `./beak wings` will allow SSH access to the Panel and
Wings environments respectively. Your Panel is accessible at `https://pterodactyl.test`. You'll need to
run through the normal setup process for the Panel if you do not have a database and environment setup
already. This can be done by SSH'ing into the Panel environment and running `setup-pterodactyl`.

The code for the setup can be found in `build/panel/setup-pterodactyl`. Please note, this environment uses
Mutagen for file handling, so replace calls to `docker compse up` or `down` with `mutagen-compose up` or `down`.
All other `docker compose` commands can be used as normal.