108 lines
No EOL
3.1 KiB
YAML
108 lines
No EOL
3.1 KiB
YAML
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: wavelog
|
|
namespace: wavelog
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: wavelog
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: wavelog
|
|
spec:
|
|
initContainers:
|
|
- name: setup
|
|
image: php:8.2-apache
|
|
command:
|
|
- /bin/bash
|
|
- -c
|
|
- |
|
|
echo "Installing dependencies..."
|
|
apt-get update && apt-get install -y \
|
|
git unzip libpng-dev libjpeg-dev libfreetype6-dev \
|
|
libzip-dev libicu-dev mariadb-client curl \
|
|
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
|
|
&& docker-php-ext-install gd mysqli pdo pdo_mysql zip intl
|
|
|
|
echo "Cloning Wavelog..."
|
|
cd /tmp
|
|
git clone https://github.com/wavelog/wavelog.git
|
|
cp -R wavelog/* /var/www/html/
|
|
cp -R wavelog/.* /var/www/html/ 2>/dev/null || true
|
|
|
|
# Create config directory
|
|
mkdir -p /var/www/html/application/config/docker
|
|
|
|
# Create database.php config
|
|
cat > /var/www/html/application/config/database.php << 'EOF'
|
|
<?php
|
|
defined('BASEPATH') OR exit('No direct script access allowed');
|
|
|
|
$active_group = 'default';
|
|
$query_builder = TRUE;
|
|
|
|
$db['default'] = array(
|
|
'dsn' => '',
|
|
'hostname' => '10.0.19.6',
|
|
'username' => 'wavelog',
|
|
'password' => 'm4icNmGTRtOMgrNxsxEdrw',
|
|
'database' => 'wavelog',
|
|
'dbdriver' => 'mysqli',
|
|
'dbprefix' => '',
|
|
'pconnect' => FALSE,
|
|
'db_debug' => FALSE,
|
|
'cache_on' => FALSE,
|
|
'cachedir' => '',
|
|
'char_set' => 'utf8mb4',
|
|
'dbcollat' => 'utf8mb4_general_ci',
|
|
'swap_pre' => '',
|
|
'encrypt' => FALSE,
|
|
'compress' => FALSE,
|
|
'stricton' => FALSE,
|
|
'failover' => array(),
|
|
'save_queries' => TRUE
|
|
);
|
|
EOF
|
|
|
|
# Set permissions
|
|
chown -R www-data:www-data /var/www/html
|
|
chmod -R 755 /var/www/html
|
|
chmod -R 777 /var/www/html/uploads
|
|
chmod -R 777 /var/www/html/application/cache
|
|
chmod -R 777 /var/www/html/application/logs
|
|
chmod -R 777 /var/www/html/userdata
|
|
|
|
# Enable Apache rewrite module
|
|
a2enmod rewrite
|
|
|
|
echo "Setup complete!"
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /var/www/html
|
|
containers:
|
|
- name: wavelog
|
|
image: php:8.2-apache
|
|
ports:
|
|
- containerPort: 80
|
|
name: http
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /var/www/html
|
|
env:
|
|
- name: APACHE_DOCUMENT_ROOT
|
|
value: /var/www/html
|
|
resources:
|
|
requests:
|
|
memory: "256Mi"
|
|
cpu: "100m"
|
|
limits:
|
|
memory: "512Mi"
|
|
cpu: "500m"
|
|
volumes:
|
|
- name: data
|
|
persistentVolumeClaim:
|
|
claimName: wavelog-data |