Update PHP and Node version

This commit is contained in:
Jonas Kaninda
2024-09-18 21:14:25 +02:00
parent 805aefc09c
commit 7273efbe62
4 changed files with 43 additions and 12 deletions

7
Makefile Normal file
View File

@@ -0,0 +1,7 @@
IMAGE_NAME:jkaninda/laravel-php-fpm
build-8.1:
docker buildx build -f src/docker/8.1/Dockerfile -t ${IMAGE_NAME}:8.1 .
build-8.2:
docker buildx build -f src/docker/8.2/Dockerfile -t ${IMAGE_NAME}:8.2 .
build-8.3:
docker buildx build -f src/docker/8.3/Dockerfile -t ${IMAGE_NAME}:8.3 .

View File

@@ -62,15 +62,39 @@ services:
user: www-data #Use www-data user for production usage user: www-data #Use www-data user for production usage
volumes: volumes:
#Project root #Project root
- ./:/var/www/html - ./src:/var/www/html
networks: networks:
- default #if you're using networks between containers - default #if you're using networks between containers
``` ```
## Laravel `artisan` command usage: ## Docker:
### Open php-fpm ### Run
```sh ```sh
docker compose exec php-fpm /bin/bash docker compose up -d
```
### Create Laravel project
```sh
docker compose exec php-fpm composer create-project --prefer-dist laravel/laravel .
```
### Artisan generate key
```sh
docker compose exec php-fpm php artisan key:generate
```
### Storage link
```sh
docker compose exec php-fpm php artisan storage:link
```
### Fix permissions
```sh
docker compose exec php-fpm chmod -R 777 storage bootstrap/cache
```
### Laravel migration
```sh
docker compose exec php-fpm php artisan migrate
```
###
```sh
docker exec -it php-fpm bash
``` ```
@@ -82,7 +106,6 @@ docker compose exec php-fpm /bin/bash
## Example Laravel-php-fpm with nginx: ## Example Laravel-php-fpm with nginx:
### docker-compose.yml ### docker-compose.yml
```yml ```yml
version: '3'
services: services:
php-fpm: php-fpm:
image: jkaninda/laravel-php-fpm image: jkaninda/laravel-php-fpm
@@ -151,7 +174,6 @@ server {
## Advanced Laravel-php-fpm with nginx: ## Advanced Laravel-php-fpm with nginx:
### docker-compose.yml ### docker-compose.yml
```yml ```yml
version: '3'
services: services:
php-fpm: php-fpm:
image: jkaninda/laravel-php-fpm image: jkaninda/laravel-php-fpm
@@ -183,7 +205,7 @@ volumes:
## Docker run ## Docker run
```sh ```sh
docker-compose up -d docker compose up -d
``` ```
## Build from base ## Build from base

View File

@@ -2,7 +2,7 @@ FROM php:8.1-fpm
ARG WORKDIR=/var/www/html ARG WORKDIR=/var/www/html
ENV DOCUMENT_ROOT=${WORKDIR} ENV DOCUMENT_ROOT=${WORKDIR}
ENV LARAVEL_PROCS_NUMBER=1 ENV LARAVEL_PROCS_NUMBER=1
ENV NODE_VERSION=17.x ENV NODE_MAJOR=20
ARG GROUP_ID=1000 ARG GROUP_ID=1000
ARG USER_ID=1000 ARG USER_ID=1000
ENV USER_NAME=www-data ENV USER_NAME=www-data
@@ -28,9 +28,11 @@ RUN apt-get update && apt-get install -y \
nano \ nano \
cron cron
RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION} | bash - # Install Nodejs
# Install Node RUN apt-get update && apt-get install -y ca-certificates curl gnupg
RUN apt-get install -y nodejs RUN curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
RUN echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
RUN apt-get update && apt-get install nodejs -y
# Clear cache # Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/* RUN apt-get clean && rm -rf /var/lib/apt/lists/*

View File

@@ -1,4 +1,4 @@
FROM php:8.3.3-fpm FROM php:8.3.4-fpm
ARG WORKDIR=/var/www/html ARG WORKDIR=/var/www/html
ENV DOCUMENT_ROOT=${WORKDIR} ENV DOCUMENT_ROOT=${WORKDIR}
ENV LARAVEL_PROCS_NUMBER=1 ENV LARAVEL_PROCS_NUMBER=1