45 lines
892 B
Bash
45 lines
892 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ensure_root
|
|
detect_pkg_manager
|
|
|
|
pkg_install curl
|
|
|
|
cd /srv/docker
|
|
$SUDO mkdir -p mariadb
|
|
cd mariadb
|
|
|
|
# Passwortblock
|
|
begin_password_section "MARIADB"
|
|
DB_ROOT_PASS="$(generate_password "mariadb_root")"
|
|
end_password_section "MARIADB"
|
|
|
|
# .env schreiben
|
|
$SUDO tee .env >/dev/null <<EOF
|
|
MYSQL_ROOT_PASSWORD=$DB_ROOT_PASS
|
|
MYSQL_DATABASE=defaultdb
|
|
EOF
|
|
|
|
# docker-compose schreiben
|
|
$SUDO tee docker-compose.yml >/dev/null <<'EOF'
|
|
services:
|
|
mariadb:
|
|
image: mariadb:11
|
|
container_name: mariadb_server
|
|
restart: unless-stopped
|
|
env_file:
|
|
- .env
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- ./data:/var/lib/mysql
|
|
command: --transaction-isolation=READ-COMMITTED --log-bin=mysqld-bin --binlog-format=ROW
|
|
EOF
|
|
|
|
$SUDO mkdir -p data
|
|
|
|
$SUDO docker compose up -d
|
|
|
|
log "MariaDB Server wurde installiert. Root-Passwort in keys.txt gespeichert."
|