A Laravel application that integrates with Github API to fetch and manipulate information about it's many repositories.
To get started, make sure you have Docker and Composer on your system, and then clone this repository.
Once the repo is clone successfully:
docker-compose up --build -ddocker-compose run --rm composer install
Now you need to create a copy of the .env.example called .env where you can modify database credentials as you see fit.
The default values to get this application running are:
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
docker-compose run --rm artisan key:generatedocker-compose run --rm artisan migrate
You should be able to see this Laravel application running at you http://localhost:8080.
There are three containers that handle Composer, NPM, and Artisan commands without having to have these platforms installed on your local computer. Use the following command templates from your project root, modifiying them to fit your particular use case:
docker-compose run --rm composer updatedocker-compose run --rm npm run devdocker-compose run --rm artisan migrate
Created Containers and their ports (if used) are as follows:
- nginx -
:8080 - mysql -
:3306 - php -
:9000 - npm
- composer
- artisan
By default, whenever you bring down the docker-compose network, your MySQL data will be removed after the containers are destroyed. If you would like to have persistent data that remains after bringing containers down and back up, do the following:
- Create a
mysqlfolder in the project root, alongside thenginxandsrcfolders. - Under the mysql service in your
docker-compose.ymlfile, add the following lines:
volumes:
- ./mysql:/var/lib/mysql