fixes
This commit is contained in:
1 parent
00fee2ee08
commit
db5e9b0bd9
3 files changed
+119
No files matched your search
+35
@@ -0,0 +1,35 @@
|
||||
FROM php:8.2-apache
|
||||
|
||||
# Install system dependencies
|
||||
RUN apt-get update && apt-get install -y \
|
||||
libpng-dev \
|
||||
libonig-dev \
|
||||
libxml2-dev \
|
||||
zip \
|
||||
unzip \
|
||||
curl
|
||||
|
||||
# Clear cache
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install PHP extensions
|
||||
RUN docker-php-ext-install mysqli pdo_mysql mbstring exif pcntl bcmath gd
|
||||
|
||||
# Enable Apache mod_rewrite
|
||||
RUN a2enmod rewrite
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /var/www/html
|
||||
|
||||
# Copy project files
|
||||
COPY . /var/www/html
|
||||
|
||||
# Adjust permissions for logs and other writable dirs
|
||||
RUN chown -R www-data:www-data /var/www/html
|
||||
|
||||
# Update Apache configuration to point to WEBROOT
|
||||
ENV APACHE_DOCUMENT_ROOT /var/www/html/Framework/WEBROOT
|
||||
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
|
||||
RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
|
||||
|
||||
EXPOSE 80
|
||||
@@ -0,0 +1,41 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# Web Server (Apache + PHP)
|
||||
web:
|
||||
build: .
|
||||
container_name: mvc_web
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- .:/var/www/html
|
||||
environment:
|
||||
- APP_ENV=dev
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- mvc_network
|
||||
|
||||
# Database (MariaDB)
|
||||
db:
|
||||
image: mariadb:10.11
|
||||
container_name: mvc_db
|
||||
restart: always
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: root_password
|
||||
MARIADB_DATABASE: mvc_database
|
||||
MARIADB_USER: mvc_user
|
||||
MARIADB_PASSWORD: mvc_password
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- mvc_db_data:/var/lib/mysql
|
||||
networks:
|
||||
- mvc_network
|
||||
|
||||
networks:
|
||||
mvc_network:
|
||||
driver: bridge
|
||||
|
||||
volumes:
|
||||
mvc_db_data:
|
||||
@@ -1704,6 +1704,49 @@ PHP;
|
||||
|
||||
|
||||
|
||||
$files['Dockerfile'] = <<<'DOCKER'
|
||||
FROM php:8.2-apache
|
||||
RUN apt-get update && apt-get install -y libpng-dev libonig-dev libxml2-dev zip unzip curl
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
RUN docker-php-ext-install mysqli pdo_mysql mbstring exif pcntl bcmath gd
|
||||
RUN a2enmod rewrite
|
||||
WORKDIR /var/www/html
|
||||
ENV APACHE_DOCUMENT_ROOT /var/www/html/WEBROOT
|
||||
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
|
||||
RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
|
||||
EXPOSE 80
|
||||
DOCKER;
|
||||
|
||||
$files['docker-compose.yml'] = <<<'YAML'
|
||||
version: '3.8'
|
||||
services:
|
||||
web:
|
||||
build: .
|
||||
container_name: mvc_web
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- .:/var/www/html
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- mvc_network
|
||||
db:
|
||||
image: mariadb:10.11
|
||||
container_name: mvc_db
|
||||
restart: always
|
||||
environment:
|
||||
MARIADB_ROOT_PASSWORD: root_password
|
||||
MARIADB_DATABASE: mvc_database
|
||||
MARIADB_USER: mvc_user
|
||||
MARIADB_PASSWORD: mvc_password
|
||||
networks:
|
||||
- mvc_network
|
||||
networks:
|
||||
mvc_network:
|
||||
driver: bridge
|
||||
YAML;
|
||||
|
||||
$files['install_db.php'] = <<<'PHP'
|
||||
<?php
|
||||
if (php_sapi_name() !== 'cli') die("CLI only.\n");
|
||||
|
||||
Reference in new issue
Block a user