Complete build pipeline to include debian image

This commit is contained in:
David Bomba
2024-11-22 15:37:45 +11:00
parent b338ef90cb
commit eeaaf95d47
5 changed files with 92 additions and 20 deletions

9
debian/.env vendored
View File

@@ -1,5 +1,5 @@
# IN application vars
APP_URL=http://in.localhost:8003
APP_URL=http://localhost:8012
APP_KEY=base64:RR++yx2rJ9kdxbdh3+AmbHLDQu+Q76i++co9Y8ybbno=
APP_ENV=production
APP_DEBUG=true
@@ -46,6 +46,7 @@ MYSQL_DATABASE=ninja
NORDIGEN_SECRET_ID=
NORDIGEN_SECRET_KEY=
# V4 env vars
# DB_STRICT=false
# APP_CIPHER=AES-256-CBC
IS_DOCKER=true
SCOUT_DRIVER=null
SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome-stable
#SNAPPDF_CHROMIUM_PATH=/usr/bin/google-chrome

23
debian/Dockerfile vendored
View File

@@ -1,5 +1,5 @@
FROM php:8.2-fpm AS base
ARG saxon=12.3
ARG saxon=12.5.0
# Install system dependencies
RUN apt-get update && apt-get install -y \
@@ -44,6 +44,21 @@ RUN wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd6
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Set permissions for www-data to execute
RUN mkdir -p /var/www/.chrome/chrome-profile \
&& chown -R www-data:www-data /var/www/.chrome \
&& chmod -R 755 /var/www/.chrome \
&& chown root:root /usr/bin/google-chrome \
&& chmod 4755 /usr/bin/google-chrome \
&& chown -R root:root /opt/google/chrome \
&& chmod -R 755 /opt/google/chrome \
&& chown -R www-data:www-data /var/www
# Create required directories with proper permissions
RUN mkdir -p /tmp/chrome \
&& chown -R www-data:www-data /tmp/chrome \
&& chmod -R 755 /tmp/chrome
# Copy Install PHP extensions installer
COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/
@@ -73,10 +88,10 @@ COPY php/php-fpm.conf /usr/local/etc/php-fpm.d/www.conf
WORKDIR /opt
## fetch
RUN curl https://www.saxonica.com/download/libsaxon-HEC-linux-v${saxon}.zip --output saxon.zip
RUN curl https://downloads.saxonica.com/SaxonC/HE/12/libsaxon-HEC-linux-x86_64-v${saxon}.zip --output saxon.zip
RUN unzip saxon.zip -d saxon
RUN cp saxon/libsaxon-HEC-linux-v${saxon}/libs/nix/libsaxon-hec-${saxon}.so /usr/lib/
WORKDIR /opt/saxon/libsaxon-HEC-linux-v${saxon}/Saxon.C.API
RUN cp saxon/libsaxon-HEC-linux-amd64-v${saxon}/libs/nix/libsaxon-hec-${saxon}.so /usr/lib/
WORKDIR /opt/saxon/libsaxon-HEC-linux-amd64-v${saxon}/Saxon.C.API
RUN phpize
RUN ./configure --enable-saxon
RUN make

View File

@@ -8,7 +8,7 @@ x-logging: &default-logging
services:
app:
image: deb39b:latest
image: deb39e:latest
restart: unless-stopped
env_file:
- ./.env
@@ -35,7 +35,7 @@ services:
image: nginx:alpine
restart: unless-stopped
ports:
- "8012:80"
- "80:80"
volumes:
- ./nginx/conf.d:/etc/nginx/conf.d:ro
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro