feat: add Dockerfile and docker-compose.yml for Coolify deployment
This commit is contained in:
+21
@@ -0,0 +1,21 @@
|
|||||||
|
FROM php:8.2-apache
|
||||||
|
|
||||||
|
# Install PDO MySQL extension
|
||||||
|
RUN docker-php-ext-install pdo pdo_mysql
|
||||||
|
|
||||||
|
# Enable Apache mod_rewrite
|
||||||
|
RUN a2enmod rewrite
|
||||||
|
|
||||||
|
# Configure PHP settings for upload limit (matching application config 10MB limit)
|
||||||
|
RUN echo "upload_max_filesize = 16M" > /usr/local/etc/php/conf.d/uploads.ini \
|
||||||
|
&& echo "post_max_size = 16M" >> /usr/local/etc/php/conf.d/uploads.ini \
|
||||||
|
&& echo "memory_limit = 256M" >> /usr/local/etc/php/conf.d/uploads.ini
|
||||||
|
|
||||||
|
# Copy application source code
|
||||||
|
COPY . /var/www/html/
|
||||||
|
|
||||||
|
# Set correct permissions
|
||||||
|
RUN chown -R www-data:www-data /var/www/html/
|
||||||
|
|
||||||
|
# Expose port 80
|
||||||
|
EXPOSE 80
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
web:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
container_name: poverty_map_web
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
- DB_HOST=db
|
||||||
|
- DB_USER=${DB_USER:-root}
|
||||||
|
- DB_PASS=${DB_PASS:-secret}
|
||||||
|
- DB_NAME=${DB_NAME:-poverty_map}
|
||||||
|
- BASE_URL=${BASE_URL:-http://localhost}
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
|
||||||
|
db:
|
||||||
|
image: mariadb:10.11
|
||||||
|
container_name: poverty_map_db
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
- MARIADB_ROOT_PASSWORD=${DB_PASS:-secret}
|
||||||
|
- MARIADB_DATABASE=${DB_NAME:-poverty_map}
|
||||||
|
volumes:
|
||||||
|
- db_data:/var/lib/mysql
|
||||||
|
- ./database.sql:/docker-entrypoint-initdb.d/init.sql:ro
|
||||||
|
ports:
|
||||||
|
- "3306:3306"
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
db_data:
|
||||||
Reference in New Issue
Block a user