This is the HTTP server for console client remote push and pull.
The best way to install is with docker and docker-compose.
First download docker-compose.yml.
Then run the setup script.
docker-compose run --rm gpglserver setup
Finally bring up the network:
docker-compose up -d
There are also default environment variables which you can override.
GPGL_SERVER_PORT_SSL=4343 docker-compose up -d
Note that the server is configured to always redirect http to https,
so if you override GPGL_SERVER_PORT_SSL
then you should
always connect directly to that port number.
The setup script generates a self-signed SSL certificate key pair. If you would like to use your own certificate, then you can copy it into the running container and it will be persisted to volume storage.
docker-compose up -d
docker cp /path/to/public.pem gpgl_server:/var/www/html/storage/ssl-public.pem
docker cp /path/to/private.key gpgl_server:/var/www/html/storage/ssl-private.key
docker-compose restart
Follow the documentation for installing a Laravel application.
tl;dr
- create a MySQL database and user account
cp .env.example .env
- update credentials in
.env
composer install
npm install
npm run prod
php artisan migrate
php artisan key:generate
php artisan passport:install
- generate SSL certificate key-pair
- proxy nginx
- enable firewall rules
The API endpoints are all covered within integration tests in gpgl console.
For the web interface, I just opened up a can of Laravel and dished it out. It's very simple and built with stock components, so there are no tests.
The Laravel framework is open-sourced software licensed under the MIT license.