feat: consolidate media services into unified media stack
- Combine Jellyfin, Filestash, and Koel into single media/ compose stack - Remove standalone jelly/ and stash/ compose files - Add Koel music streaming with PostgreSQL backend - Update core PostgreSQL init script to create koel database - Add media stack to root compose.yaml include - Configure media services with subdomain routing (jellyfin.media, filestash.media, koel.media) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -11,35 +11,39 @@ psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-E
|
||||
-- Create databases for compose services
|
||||
-- Main application database
|
||||
SELECT 'CREATE DATABASE directus'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'directus')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'directus')\\gexec
|
||||
|
||||
-- Umami analytics database
|
||||
SELECT 'CREATE DATABASE umami'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'umami')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'umami')\\gexec
|
||||
|
||||
-- n8n workflow automation database
|
||||
SELECT 'CREATE DATABASE n8n'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'n8n')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'n8n')\\gexec
|
||||
|
||||
-- Linkwarden bookmark manager database
|
||||
SELECT 'CREATE DATABASE linkwarden'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'linkwarden')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'linkwarden')\\gexec
|
||||
|
||||
-- Joplin note-taking server database
|
||||
SELECT 'CREATE DATABASE joplin'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'joplin')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'joplin')\\gexec
|
||||
|
||||
-- Mattermost chat platform database
|
||||
SELECT 'CREATE DATABASE mattermost'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'mattermost')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'mattermost')\\gexec
|
||||
|
||||
-- Tandoor recipe manager database
|
||||
SELECT 'CREATE DATABASE tandoor'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'tandoor')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'tandoor')\\gexec
|
||||
|
||||
-- Asciinema terminal recording server database
|
||||
SELECT 'CREATE DATABASE asciinema'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'asciinema')\gexec
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'asciinema')\\gexec
|
||||
|
||||
-- Koel music streaming database
|
||||
SELECT 'CREATE DATABASE koel'
|
||||
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'koel')\\gexec
|
||||
|
||||
-- Grant privileges to all databases
|
||||
GRANT ALL PRIVILEGES ON DATABASE directus TO $POSTGRES_USER;
|
||||
@@ -50,11 +54,12 @@ psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-E
|
||||
GRANT ALL PRIVILEGES ON DATABASE mattermost TO $POSTGRES_USER;
|
||||
GRANT ALL PRIVILEGES ON DATABASE tandoor TO $POSTGRES_USER;
|
||||
GRANT ALL PRIVILEGES ON DATABASE asciinema TO $POSTGRES_USER;
|
||||
GRANT ALL PRIVILEGES ON DATABASE koel TO $POSTGRES_USER;
|
||||
|
||||
-- Log success
|
||||
SELECT 'Compose databases initialized:' AS status;
|
||||
SELECT datname FROM pg_database
|
||||
WHERE datname IN ('directus', 'umami', 'n8n', 'linkwarden', 'joplin', 'mattermost', 'tandoor', 'asciinema')
|
||||
WHERE datname IN ('directus', 'umami', 'n8n', 'linkwarden', 'joplin', 'mattermost', 'tandoor', 'asciinema', 'koel')
|
||||
ORDER BY datname;
|
||||
EOSQL
|
||||
|
||||
@@ -71,4 +76,5 @@ echo " • joplin - Note-taking server database"
|
||||
echo " • mattermost - Chat platform database"
|
||||
echo " • tandoor - Recipe manager database"
|
||||
echo " • asciinema - Terminal recording server database"
|
||||
echo " • koel - Music streaming server database"
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user