mirror of
https://github.com/pterodactyl/development.git
synced 2026-02-04 02:07:17 -06:00
Untested wings concept
This commit is contained in:
parent
847a283039
commit
0adf79f562
39
build/wings/Dockerfile
Normal file
39
build/wings/Dockerfile
Normal file
@ -0,0 +1,39 @@
|
||||
FROM debian:11-slim
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive \
|
||||
LANG C.UTF-8 \
|
||||
GOBIN /usr/local/go/bin
|
||||
|
||||
USER root
|
||||
RUN apt -y update \
|
||||
&& apt -y --no-install-recommends install software-properties-common gnupg2 curl sudo \
|
||||
&& curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg \
|
||||
&& echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null \
|
||||
&& apt -y update \
|
||||
&& apt -y --no-install-recommends install \
|
||||
iputils-ping \
|
||||
tar \
|
||||
zip \
|
||||
unzip \
|
||||
make \
|
||||
gcc \
|
||||
g++ \
|
||||
gdb \
|
||||
python \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
&& curl -OL https://go.dev/dl/go1.17.6.linux-amd64.tar.gz \
|
||||
&& tar xvf go1.17.6.linux-amd64.tar.gz -C /usr/local \
|
||||
&& chown -R root:root /usr/local/go \
|
||||
&& rm -rf go1.17.6.linux-amd64.tar.gz \
|
||||
&& /usr/local/go/bin/go get github.com/go-delve/delve/cmd/dlv \
|
||||
&& usermod -aG docker root \
|
||||
&& echo "export PATH=\$PATH:/usr/local/go/bin" >> /etc/bash.bashrc
|
||||
|
||||
EXPOSE 8080
|
||||
EXPOSE 2022
|
||||
|
||||
WORKDIR /home/root/wings
|
||||
|
||||
CMD ["/bin/bash"]
|
||||
@ -33,6 +33,20 @@ services:
|
||||
- "traefik.http.routers.app.rule=Host(`pterodactyl.test`)"
|
||||
- "traefik.http.routers.app.entrypoints=https"
|
||||
- "traefik.http.services.app.loadbalancer.server.port=80"
|
||||
wings:
|
||||
build:
|
||||
context: ./build/wings
|
||||
dockerfile: Dockerfile
|
||||
tty: true
|
||||
stdin_open: true
|
||||
networks:
|
||||
pterodactyl:
|
||||
aliases:
|
||||
- wings.pterodactyl.test
|
||||
volumes:
|
||||
- ./code/wings:/home/root/wings:cached
|
||||
- wings-data:/var/lib/pterodactyl:delegated
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
mysql:
|
||||
image: mariadb:10.7
|
||||
restart: unless-stopped
|
||||
@ -96,3 +110,5 @@ volumes:
|
||||
driver: local
|
||||
minio:
|
||||
driver: local
|
||||
wings-data:
|
||||
driver: local
|
||||
|
||||
@ -1,70 +0,0 @@
|
||||
#!/bin/bash
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
sudo cp /tmp/.deploy/supervisor/pterodactyl.conf /etc/supervisor/conf.d/pterodactyl.conf
|
||||
sudo cp /tmp/.deploy/nginx/pterodactyl.test.conf /etc/nginx/sites-available/pterodactyl.test.conf
|
||||
|
||||
# Needed for FPM to start correctly.
|
||||
sudo mkdir -p /run/php
|
||||
|
||||
# Disable xdebug on the CLI for _MASSIVE_ performance improvement
|
||||
sudo phpdismod -s cli xdebug
|
||||
|
||||
cd /home/vagrant/app
|
||||
sudo chown -R vagrant:vagrant *
|
||||
sudo chown -R www-data:vagrant storage
|
||||
sudo chmod -R 775 storage/* bootstrap/cache
|
||||
|
||||
# Start out in a "this isn't a new install" mode
|
||||
freshInstall=false
|
||||
# If no environment file is found copy the example one and then generate the key.
|
||||
if [ ! -f ".env" ]; then
|
||||
cp .env.example .env
|
||||
fi
|
||||
|
||||
# Force this into local/debug mode
|
||||
sed -i "s/APP_ENV=.*/APP_ENV=local/" .env
|
||||
sed -i "s/APP_DEBUG=.*/APP_DEBUG=true/" .env
|
||||
|
||||
composer install --no-interaction --prefer-dist --no-scripts --no-progress
|
||||
php artisan config:clear
|
||||
|
||||
# Configure the cronjob
|
||||
(crontab -l 2>/dev/null; echo "* * * * * php /home/vagrant/app/artisan schedule:run >> /dev/null 2>&1") | crontab -
|
||||
|
||||
# Create symlink
|
||||
sudo rm -f /srv/www
|
||||
sudo ln -s /home/vagrant/app /srv/www
|
||||
|
||||
# Configure OPCache
|
||||
sudo cat | sudo tee -a /etc/php/8.0/cli/conf.d/10-opcache.ini > /dev/null <<EOF
|
||||
opcache.revalidate_freq = 0
|
||||
opcache.max_accelerated_files = 11003
|
||||
opcache.memory_consumption = 192
|
||||
opcache.interned_strings_buffer = 16
|
||||
opcache.fast_shutdown = 1
|
||||
opcache.enable = 1
|
||||
opcache.enable_cli = 1
|
||||
EOF
|
||||
|
||||
sudo cat | sudo tee -a /etc/php/8.0/fpm/conf.d/20-xdebug.ini > /dev/null <<EOF
|
||||
xdebug.mode=debug
|
||||
xdebug.client_host=host.docker.internal
|
||||
xdebug.client_port=9003
|
||||
EOF
|
||||
|
||||
# Install development dependencies
|
||||
yarn install --no-progress
|
||||
|
||||
# Cleanup
|
||||
sudo rm -rfv /var/www
|
||||
sudo rm -rv /etc/nginx/sites-enabled/*
|
||||
sudo ln -s /etc/nginx/sites-available/pterodactyl.test.conf /etc/nginx/sites-enabled/pterodactyl.test.conf
|
||||
|
||||
# Start processes
|
||||
sudo supervisorctl reread
|
||||
sudo supervisorctl update
|
||||
sudo supervisorctl start pteroq:*
|
||||
sudo supervisorctl restart nginx
|
||||
|
||||
echo "done."
|
||||
14
setup.sh
14
setup.sh
@ -3,23 +3,15 @@
|
||||
CURRENT_DIRECTORY="$(pwd)"
|
||||
cd /tmp
|
||||
|
||||
vagrant plugin install vagrant-vbguest
|
||||
vagrant plugin install vagrant-hostmanager
|
||||
|
||||
cd ${CURRENT_DIRECTORY}
|
||||
|
||||
git clone https://github.com/pterodactyl/panel.git code/panel
|
||||
git clone https://github.com/pterodactyl/documentation.git code/documentation
|
||||
git clone https://github.com/pterodactyl/wings.git code/wings
|
||||
|
||||
mkdir -p .data/certificates
|
||||
|
||||
mkcert -install
|
||||
mkcert pterodactyl.test '*.pterodactyl.test'
|
||||
|
||||
mv *pterodactyl.test*-key.pem .data/certificates/pterodactyl.test-key.pem
|
||||
mv *pterodactyl.test*.pem .data/certificates/pterodactyl.test.pem
|
||||
cp "$(mkcert -CAROOT)/rootCA.pem" .data/certificates/root_ca.pem
|
||||
|
||||
# sudo gem install docker-sync
|
||||
# docker-sync start
|
||||
mv *pterodactyl.test*-key.pem docker/certificates/pterodactyl.test-key.pem
|
||||
mv *pterodactyl.test*.pem docker/certificates/pterodactyl.test.pem
|
||||
cp "$(mkcert -CAROOT)/rootCA.pem" docker/certificates/root_ca.pem
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user