add docker

This commit is contained in:
Mario Peters
2026-01-03 18:48:02 +01:00
parent c1809c3f39
commit 02977e0311
5 changed files with 42975 additions and 13 deletions

32
Dockerfile Normal file
View File

@@ -0,0 +1,32 @@
FROM php:7.4-apache
# Install system dependencies
RUN apt-get update && apt-get install -y \
git \
unzip \
libzip-dev \
libpng-dev \
libjpeg62-turbo-dev \
libfreetype6-dev \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install -j$(nproc) gd mysqli pdo pdo_mysql zip gettext
# Enable Apache mod_rewrite
RUN a2enmod rewrite
# Install Composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
# Set working directory
WORKDIR /var/www/html
# Copy application files
COPY . /var/www/html
# Install PHP dependencies
# We use --no-scripts because some scripts might depend on the DB being ready
# Using 'update' because composer.lock is out of sync with composer.json
RUN composer update --no-interaction --optimize-autoloader --no-scripts
# Set permissions (adjust as needed)
RUN chown -R www-data:www-data /var/www/html

File diff suppressed because it is too large Load Diff

41
docker-compose.yml Normal file
View File

@@ -0,0 +1,41 @@
services:
app:
build: .
container_name: karateturniere-app
ports:
- "8080:80"
volumes:
- .:/var/www/html
environment:
- DBSERVER=db
- DBNAME=karateturniere
- DBUSER=karateturniere
- DBPASS=secret
- URL=//localhost:8080
- PFAD=/var/www/html/
- TITEL=Karateturniere
depends_on:
- db
networks:
- kt-network
db:
image: mariadb:10.5
container_name: karateturniere-db
environment:
- MYSQL_ROOT_PASSWORD=rootsecret
- MYSQL_DATABASE=karateturniere
- MYSQL_USER=karateturniere
- MYSQL_PASSWORD=secret
volumes:
- db_data:/var/lib/mysql
- ./db_dump:/docker-entrypoint-initdb.d
networks:
- kt-network
networks:
kt-network:
driver: bridge
volumes:
db_data:

View File

@@ -7,11 +7,19 @@
$gurte = array('9. Kyu','8. Kyu','7. Kyu','6. Kyu','5. Kyu','4. Kyu','3. Kyu','2. Kyu','1. Kyu','DAN');
### DB ###
// local
// define("DBNAME" , "karateturniere");
// define("DBUSER" , "root");
// define("DBPASS" , "");
// define("DBSERVER" , "localhost");
// Docker / Environment Variables
if (getenv('DBNAME')) {
define("DBNAME", getenv('DBNAME'));
define("DBUSER", getenv('DBUSER'));
define("DBPASS", getenv('DBPASS'));
define("DBSERVER", getenv('DBSERVER'));
} else {
// Fallback / Local defaults
// define("DBNAME" , "karateturniere");
// define("DBUSER" , "root");
// define("DBPASS" , "");
// define("DBSERVER" , "localhost");
}
// Karatetruniere.de
// define("DBNAME" , "karateturniere");
@@ -28,16 +36,24 @@
### END DB ###
### Server ###
// wsl
define("URL" , "//kt.wsl"); //ohne slash am ende
define("PFAD" , "/var/www/kt.wsl/html/");
define("TITEL" , "Karateturniere");
// Docker / Environment Variables
if (getenv('URL')) {
define("URL", getenv('URL'));
define("PFAD", getenv('PFAD'));
define("TITEL", getenv('TITEL') ?: "Karateturniere");
} else {
// wsl
define("URL" , "//kt.wsl"); //ohne slash am ende
define("PFAD" , "/var/www/kt.wsl/html/");
define("TITEL" , "Karateturniere");
}
// local
// define("URL" , "//localhost/karateturniere"); //ohne slash am ende
// define("PFAD" , "C:/xampp/htdocs/Karateturniere/");
// define("TITEL" , "Karateturniere");
// Karateturniere.de
// define("URL" , "//karateturniere.de");
// define("PFAD" , "/var/www/vhosts/wattsche.de/karateturniere.de/");

View File

@@ -1,10 +1,17 @@
<?php
/* database connection */
$db_host = "localhost";
$db_name = "db_name";
$db_user = "user_id";
$db_password = "password";
if (getenv('DBSERVER')) {
$db_host = getenv('DBSERVER');
$db_name = getenv('DBNAME');
$db_user = getenv('DBUSER');
$db_password = getenv('DBPASS');
} else {
$db_host = "localhost";
$db_name = "db_name";
$db_user = "user_id";
$db_password = "password";
}
/* database settings */
$db_prefix = "stat";