Skip to content

AnwarHossainSR/latest-laravel-docker-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Setup Docker Laravel (10,11, 12)

Step by step

Clone Repository

git clone https://github.com/especializati/latest-laravel-docker-starter.git

Clone the Laravel Files

git clone https://github.com/laravel/laravel.git your-project-name

Copy the docker-compose.yml, Dockerfile and docker/ directory to your project

cp -rf latest-laravel-docker-starter/* your-project-name/
rm -rf latest-laravel-docker-starter
cd your-project-name/
rm -rf .git .github

Create the .env File

cp .env.example .env

Update .env file environment variables with this one

APP_NAME="Your Project Name"
APP_URL=http://localhost:8989
APP_ENV=local
APP_KEY=
APP_DEBUG=true

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=root

BROADCAST_DRIVER=log
CACHE_DRIVER=redis
FILESYSTEM_DISK=local
QUEUE_CONNECTION=redis
SESSION_DRIVER=redis
SESSION_LIFETIME=120

MEMCACHED_HOST=127.0.0.1

REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1

VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
VITE_PUSHER_HOST="${PUSHER_HOST}"
VITE_PUSHER_PORT="${PUSHER_PORT}"
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

Upload the project containers

sudo docker-compose up -d

Access the container

sudo docker-compose exec app bash

Install project dependencies

composer install

Generate Laravel project key

php artisan key:generate

DB migrate and seed

php artisan migrate:fresh --seed

Access the project http://localhost:8989

if you face any problem related to phpmyadmin access, please follow bellow command

php myadmin access issue

sudo docker-compose exec db mysql -u root -p

Then hit Enter when ask for password

Create new user

CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';

Give permission

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';

Flush Priviledge

FLUSH PRIVILEGES;

If getting error regarding network / ip related issue

Allow Connections from All IPs:

sudo docker-compose exec db mysql -u root -p

Then hit Enter when ask for password

GRANT ALL PRIVILEGES ON database_name.* TO 'admin'@'%' IDENTIFIED BY 'admin';

OR

Specify Docker Container IP Range:

GRANT ALL PRIVILEGES ON database_name.* TO 'user1'@'172.17.%' IDENTIFIED BY 'password';