https://github.com/patternhelloworld/laravel-crud-boilerplate
Run a PHP Laravel server using Docker with easy instructions
https://github.com/patternhelloworld/laravel-crud-boilerplate
laravel-boilerplate laravel-docker laravel-sample
Last synced: 5 months ago
JSON representation
Run a PHP Laravel server using Docker with easy instructions
- Host: GitHub
- URL: https://github.com/patternhelloworld/laravel-crud-boilerplate
- Owner: patternhelloworld
- License: mit
- Created: 2023-06-07T04:10:24.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-09T14:14:21.000Z (over 2 years ago)
- Last Synced: 2024-10-15T04:02:29.863Z (about 1 year ago)
- Topics: laravel-boilerplate, laravel-docker, laravel-sample
- Language: PHP
- Homepage:
- Size: 220 KB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: license.md
Awesome Lists containing this project
README
# Laravel CRUD Boilerplate
## Overview & Installation
Laravel CRUD Boilerplate is a modified version of a MIT licensed sample project, laravel-react ( https://github.com/moeen-basra/laravel-react ).
I have removed front-end things and added some more convenient things, such as,
```shell
# For Git cloning, if you use WIN WSL2, I strongly recommend cloning on a WSL folder `\\wsl$\Ubuntu\home` not `c:\`. You use Mac, I don't know, as I don't have one. T.T
git clone https://github.com/Andrew-Kang-G/laravel-crud-boilerplate
cp .env.example.local .env
# on .env, you need to modify just one thing. "HOST_IP" (WIN WSL2 : host.docker.internal, Mac : docker.for.mac.localhost)
docker-compose build
docker-compose up -d
# You can see the building process by running 'docker logs -f lr_app'.
# You can get into the App container by running 'docker exec -it lr_app bash'. (As Dockerfile has been built as a ROOT user, you can do anything inside the container. However, considering security, add USER www-data on Dockerfile on production environments.
```
## Prerequisite
For me, on WSL2,
- Docker version 20.10.23
- Docker Compose version v2.15.1
## Database
- It is automatically up as running `docker-compose up -d` above.
- If you need to persist data continually, just uncomment `# ./.docker/db/data:/var/lib/mysql` AND comment `./.docker/db/dump.sql:/docker-entrypoint-initdb.d/dump.sql` on the docker-compose.yml.
- The transaction isolation level is at 'READ-COMMITTED' on the docker-compose.yml.
- If you consider the safety of 'gap-lock' or something, set it to 'REPEATABLE-READ' on the docker-compose.yml,
## Debugging
On the 'docker-compose.yml',
`PHP_IDE_CONFIG: "serverName=laravel-crud-boilerplate"` And

must be the same, 'laravel-crud-boilerplate'.
Additionally, set the port to be 9002.

## Test APIs
Postman API files are on `./reference/postman`
## PHP Source Codes
These are what I have done and they all are on `./reference/postman`.
```
Api/Auth/LoginController/login
Api/CourseController/index (Get all paginated courses, TO DO : check paginated parameters)
Api/CourseController/delete (Admin : activate course)
Api/CourseController/restore (Admin : deactivate course)
Api/LessonController/store (Lesson : Start, End)
```
The term "NOT exist" means it could be soft-deleted or could NOT exist.
```json
{
"message": "The given data was invalid.",
"errors": {
"course_id": [
"The course_id (course id) does NOT exist."
]
}
}
```
## Test Codes
T.T. Not yet.