# Deployment ## Server: miniweb.kuehn.home - SSH: `ssh -p 30183 root@miniweb.kuehn.home` - App dir: `/var/www/tracker/` - Apache DocumentRoot: `/var/www/tracker/public/` - Database: MariaDB, DB name `dd`, user `dd` - URL: `http://miniweb.kuehn.home/dd/` ## First-time Setup (already done) ```bash cd /var/www/tracker composer install --no-dev --optimize-autoloader # create .env.local with real credentials (see below) php bin/console cache:clear --env=prod ``` ### `.env.local` on server ``` APP_ENV=prod APP_SECRET= DATABASE_URL="mysql://dd:@127.0.0.1:3306/dd?serverVersion=mariadb-8.3.0&charset=utf8mb4" APP_URL=http://miniweb.kuehn.home/dd DEFAULT_URI=http://miniweb.kuehn.home/dd MAILER_DSN=smtp://user:pass@smtp.example.com:587 MAILER_FROM=noreply@example.com ``` ### Apache VirtualHost (or adjust existing) ```apache ServerName miniweb.kuehn.home DocumentRoot /var/www/tracker/public AllowOverride All Require all granted ``` ### Database remember-me table ```sql CREATE TABLE IF NOT EXISTS rememberme_token ( series VARCHAR(88) NOT NULL, value VARCHAR(88) NOT NULL, lastUsed DATETIME NOT NULL, class VARCHAR(100) DEFAULT '' NOT NULL, username VARCHAR(200) NOT NULL, PRIMARY KEY (series) ) DEFAULT CHARACTER SET utf8mb4; ``` ## Deploying Updates ```bash bash deploy.sh ``` This rsync's the project (excluding `vendor/`, `var/`, `.env.local`), runs `composer install --no-dev` and `cache:clear --env=prod` remotely. ## Local Development - URL: `http://dudi.local/` - Apache VirtualHost with DocumentRoot `/srv/http/zieltracker/public` - `/etc/hosts`: `127.0.0.1 dudi.local` - DB: MariaDB, db `zieltracker`, user `zieltracker` - `APP_ENV=dev` (Symfony debug bar active)