# 🐧 Crumbforest Docker + TTYD Setup (CakePHP 5)

Dieses Setup integriert **CakePHP**, **MariaDB**, **TTYD** und ein interaktives Login-Terminal.

---

## 📁 Dockerfile (Auszug)

```Dockerfile
FROM php:8.3-apache

RUN apt-get update && apt-get install -y \
    curl bash libicu-dev dos2unix \
    && docker-php-ext-install intl pdo_mysql \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

RUN curl -L https://github.com/tsl0922/ttyd/releases/download/1.7.3/ttyd.x86_64 -o /usr/local/bin/ttyd && \
    chmod +x /usr/local/bin/ttyd

COPY session_wrapper.sh /scripts/session_wrapper.sh
RUN chmod +x /scripts/session_wrapper.sh

COPY . /var/www/html
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh

WORKDIR /var/www/html
```

---

## ⚙️ entrypoint.sh

```bash
#!/bin/bash
echo "🚀 Starte Apache und Crumbforest Terminal..."
apache2ctl start
ttyd --writable /scripts/session_wrapper.sh
```

---

## 📡 docker-compose.yml

```yaml
services:
  app:
    build: .
    ports:
      - "8080:80"
      - "7681:7681"
    volumes:
      - .:/var/www/html
    depends_on:
      - db
```

---

## 🧙 session_wrapper.sh (TTYD-kompatibel)

```bash
#!/bin/bash

clear
echo "Willkommen im Crumbforest Terminal!"
echo "-----------------------------------"
echo
echo "🌲 Deine Reise beginnt hier. 🌲"
echo

exec login
```

---

## ✅ Ergebnis

- Token-basierter Zugang über TTYD
- Web-Login über CakePHP
- Konsistentes Setup ohne CSRF-Probleme

👉 Dokumentation bereit für Git, Wiki oder Deployment-Skripte.
