From 563a16256c33bb0cbb4f3b1218df20aab334e25f Mon Sep 17 00:00:00 2001 From: Persson-dev Date: Sat, 7 Jun 2025 11:31:30 +0200 Subject: [PATCH] better docker scripts --- Makefile | 32 ++++++++++++++++++++++++++++++++ images/.env | 7 +++++++ images/Laravel_Dockerfile | 7 ++++++- images/init_breeze.sh | 3 --- images/init_laravel.sh | 12 ++++++++++++ package-lock.json | 6 ------ 6 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 Makefile create mode 100644 images/.env delete mode 100644 images/init_breeze.sh create mode 100644 images/init_laravel.sh delete mode 100644 package-lock.json diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1fa5130 --- /dev/null +++ b/Makefile @@ -0,0 +1,32 @@ +DOCKER_CONTAINER_NAME=isi2-laravel-1 +DOCKER_CMD=docker exec -it $(DOCKER_CONTAINER_NAME) + +# Launch the container detached +all: + docker compose up -d + +# Launch the container +run: + docker compose up + +# Stop the container +stop: + docker compose down + +# Stop the container and wipe the database +down: + docker compose down -v + + + + +# These tasks need the docker container to be running + +exec_container: + $(DOCKER_CMD) bash + +seed: + $(DOCKER_CMD) php artisan db:seed --class=$(CLASS) + +migrate: + $(DOCKER_CMD) php artisan migrate \ No newline at end of file diff --git a/images/.env b/images/.env new file mode 100644 index 0000000..2922e33 --- /dev/null +++ b/images/.env @@ -0,0 +1,7 @@ +DB_CONNECTION=mariadb +DB_HOST=mariadb +DB_PORT=3306 +DB_DATABASE=laravel_db +DB_USERNAME=laravel_user +DB_PASSWORD=super_strong_password +APP_KEY="" \ No newline at end of file diff --git a/images/Laravel_Dockerfile b/images/Laravel_Dockerfile index 1b46971..2591f5f 100644 --- a/images/Laravel_Dockerfile +++ b/images/Laravel_Dockerfile @@ -4,4 +4,9 @@ RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | ba RUN . ~/.nvm/nvm.sh && nvm install --lts -RUN composer require laravel/breeze --dev +COPY init_laravel.sh /init/init_laravel.sh +COPY .env /init/.env + +RUN chmod +x /init/init_laravel.sh + +CMD bash /init/init_laravel.sh \ No newline at end of file diff --git a/images/init_breeze.sh b/images/init_breeze.sh deleted file mode 100644 index b3f35ca..0000000 --- a/images/init_breeze.sh +++ /dev/null @@ -1,3 +0,0 @@ -composer require laravel/breeze --dev -php artisan breeze:install blade -php artisan migrate \ No newline at end of file diff --git a/images/init_laravel.sh b/images/init_laravel.sh new file mode 100644 index 0000000..30479a5 --- /dev/null +++ b/images/init_laravel.sh @@ -0,0 +1,12 @@ +#!/bin/sh +composer install + +# Create .env if it does not exist +if ! [ -e ".env" ] ; then + cp /init/.env . + php artisan key:generate +fi + +php artisan breeze:install blade +php artisan migrate --force +php artisan serve --host=0.0.0.0 --port=8000 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index e3c0b7f..0000000 --- a/package-lock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "isi2", - "lockfileVersion": 3, - "requires": true, - "packages": {} -}