mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
Merge pull request #406 from benbristow/fix/directus
fix: directus healthchecks (fix race condition starting up), volumes for uploads & extensions, add secret/db password generation, bump version to 11.0.2
This commit is contained in:
commit
da6efcf733
@ -1,47 +1,66 @@
|
||||
version: "3.8"
|
||||
services:
|
||||
database:
|
||||
image: postgis/postgis:13-master
|
||||
volumes:
|
||||
- directus:/var/lib/postgresql/data
|
||||
- directus_database:/var/lib/postgresql/data
|
||||
networks:
|
||||
- dokploy-network
|
||||
environment:
|
||||
POSTGRES_USER: "directus"
|
||||
POSTGRES_PASSWORD: "directus"
|
||||
POSTGRES_PASSWORD: ${DATABASE_PASSWORD}
|
||||
POSTGRES_DB: "directus"
|
||||
healthcheck:
|
||||
test: ["CMD", "pg_isready", "--host=localhost", "--username=directus"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_interval: 5s
|
||||
start_period: 30s
|
||||
|
||||
cache:
|
||||
image: redis:6
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "[ $$(redis-cli ping) = 'PONG' ]"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_interval: 5s
|
||||
start_period: 30s
|
||||
networks:
|
||||
- dokploy-network
|
||||
|
||||
directus:
|
||||
image: directus/directus:10.12.1
|
||||
image: directus/directus:11.0.2
|
||||
ports:
|
||||
- 8055
|
||||
volumes:
|
||||
- ../files/uploads:/directus/uploads
|
||||
- ../files/extensions:/directus/extensions
|
||||
- directus_uploads:/directus/uploads
|
||||
- directus_extensions:/directus/extensions
|
||||
depends_on:
|
||||
- cache
|
||||
- database
|
||||
database:
|
||||
condition: service_healthy
|
||||
cache:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
SECRET: "replace-with-secure-random-value"
|
||||
SECRET: ${DIRECTUS_SECRET}
|
||||
|
||||
DB_CLIENT: "pg"
|
||||
DB_HOST: "database"
|
||||
DB_PORT: "5432"
|
||||
DB_DATABASE: "directus"
|
||||
DB_USER: "directus"
|
||||
DB_PASSWORD: "directus"
|
||||
DB_PASSWORD: ${DATABASE_PASSWORD}
|
||||
|
||||
CACHE_ENABLED: "true"
|
||||
CACHE_AUTO_PURGE: "true"
|
||||
CACHE_STORE: "redis"
|
||||
REDIS: "redis://cache:6379"
|
||||
|
||||
# After first successful login, remove the admin email/password env. variables below
|
||||
# as these will now be stored in the database.
|
||||
ADMIN_EMAIL: "admin@example.com"
|
||||
ADMIN_PASSWORD: "d1r3ctu5"
|
||||
volumes:
|
||||
directus:
|
||||
directus_uploads:
|
||||
directus_extensions:
|
||||
directus_database:
|
@ -3,9 +3,14 @@ import {
|
||||
type Schema,
|
||||
type Template,
|
||||
generateRandomDomain,
|
||||
generateBase64,
|
||||
generatePassword,
|
||||
} from "../utils";
|
||||
|
||||
export function generate(schema: Schema): Template {
|
||||
const directusSecret = generateBase64(64);
|
||||
const databasePassword = generatePassword();
|
||||
|
||||
const domains: DomainSchema[] = [
|
||||
{
|
||||
host: generateRandomDomain(schema),
|
||||
@ -14,7 +19,13 @@ export function generate(schema: Schema): Template {
|
||||
},
|
||||
];
|
||||
|
||||
const envs = [
|
||||
`DATABASE_PASSWORD=${databasePassword}`,
|
||||
`DIRECTUS_SECRET=${directusSecret}`,
|
||||
];
|
||||
|
||||
return {
|
||||
domains,
|
||||
envs,
|
||||
};
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ export const templates: TemplateData[] = [
|
||||
{
|
||||
id: "directus",
|
||||
name: "Directus",
|
||||
version: "10.12.1",
|
||||
version: "11.0.2",
|
||||
description:
|
||||
"Directus is an open source headless CMS that provides an API-first solution for building custom backends.",
|
||||
logo: "directus.jpg",
|
||||
|
Loading…
Reference in New Issue
Block a user