mirror of
https://github.com/formbricks/formbricks.git
synced 2025-12-20 13:10:30 -06:00
fix: updated docker file with redis and minio containers (#4909)
This commit is contained in:
@@ -185,7 +185,7 @@ ENTERPRISE_LICENSE_KEY=
|
|||||||
UNSPLASH_ACCESS_KEY=
|
UNSPLASH_ACCESS_KEY=
|
||||||
|
|
||||||
# The below is used for Next Caching (uses In-Memory from Next Cache if not provided)
|
# The below is used for Next Caching (uses In-Memory from Next Cache if not provided)
|
||||||
# REDIS_URL=redis://localhost:6379
|
REDIS_URL=redis://localhost:6379
|
||||||
|
|
||||||
# The below is used for Rate Limiting (uses In-Memory LRU Cache if not provided) (You can use a service like Webdis for this)
|
# The below is used for Rate Limiting (uses In-Memory LRU Cache if not provided) (You can use a service like Webdis for this)
|
||||||
# REDIS_HTTP_URL:
|
# REDIS_HTTP_URL:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
images=($(yq eval '.services.*.image' packages/database/docker-compose.yml))
|
images=($(yq eval '.services.*.image' docker-compose.dev.yml))
|
||||||
|
|
||||||
pull_image() {
|
pull_image() {
|
||||||
docker pull "$1"
|
docker pull "$1"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ const createTimeoutPromise = (ms, rejectReason) => {
|
|||||||
CacheHandler.onCreation(async () => {
|
CacheHandler.onCreation(async () => {
|
||||||
let client;
|
let client;
|
||||||
|
|
||||||
if (process.env.REDIS_URL && process.env.ENTERPRISE_LICENSE_KEY) {
|
if (process.env.REDIS_URL) {
|
||||||
try {
|
try {
|
||||||
// Create a Redis client.
|
// Create a Redis client.
|
||||||
client = createClient({
|
client = createClient({
|
||||||
@@ -45,8 +45,6 @@ CacheHandler.onCreation(async () => {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (process.env.REDIS_URL) {
|
|
||||||
console.log("Redis clustering requires an Enterprise License. Falling back to LRU cache.");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @type {import("@neshca/cache-handler").Handler | null} */
|
/** @type {import("@neshca/cache-handler").Handler | null} */
|
||||||
|
|||||||
44
docker-compose.dev.yml
Normal file
44
docker-compose.dev.yml
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: pgvector/pgvector:pg17
|
||||||
|
volumes:
|
||||||
|
- postgres:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
- POSTGRES_DB=postgres
|
||||||
|
- POSTGRES_USER=postgres
|
||||||
|
- POSTGRES_PASSWORD=postgres
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
|
||||||
|
mailhog:
|
||||||
|
image: arjenz/mailhog # Copy of mailhog/MailHog to support linux/arm64
|
||||||
|
ports:
|
||||||
|
- 8025:8025 # web ui
|
||||||
|
- 1025:1025 # smtp server
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:7.0.11
|
||||||
|
ports:
|
||||||
|
- 6379:6379
|
||||||
|
volumes:
|
||||||
|
- redis-data:/data
|
||||||
|
|
||||||
|
minio:
|
||||||
|
image: minio/minio:RELEASE.2025-02-28T09-55-16Z
|
||||||
|
command: server /data --console-address ":9001"
|
||||||
|
environment:
|
||||||
|
- MINIO_ROOT_USER=devminio
|
||||||
|
- MINIO_ROOT_PASSWORD=devminio123
|
||||||
|
ports:
|
||||||
|
- "9000:9000" # S3 API
|
||||||
|
- "9001:9001" # Console
|
||||||
|
volumes:
|
||||||
|
- minio-data:/data
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres:
|
||||||
|
driver: local
|
||||||
|
redis-data:
|
||||||
|
driver: local
|
||||||
|
minio-data:
|
||||||
|
driver: local
|
||||||
@@ -17,7 +17,9 @@
|
|||||||
"db:migrate:deploy": "turbo run db:migrate:deploy",
|
"db:migrate:deploy": "turbo run db:migrate:deploy",
|
||||||
"db:start": "turbo run db:start",
|
"db:start": "turbo run db:start",
|
||||||
"db:push": "turbo run db:push",
|
"db:push": "turbo run db:push",
|
||||||
"go": "turbo run go --concurrency 20",
|
"db:up": "docker compose -f docker-compose.dev.yml up -d",
|
||||||
|
"db:down": "docker compose -f docker-compose.dev.yml down",
|
||||||
|
"go": "pnpm db:up && turbo run go --concurrency 20",
|
||||||
"dev": "turbo run dev --parallel",
|
"dev": "turbo run dev --parallel",
|
||||||
"pre-commit": "lint-staged",
|
"pre-commit": "lint-staged",
|
||||||
"start": "turbo run start --parallel",
|
"start": "turbo run start --parallel",
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
services:
|
|
||||||
postgres:
|
|
||||||
image: pgvector/pgvector:pg17
|
|
||||||
volumes:
|
|
||||||
- postgres:/var/lib/postgresql/data
|
|
||||||
environment:
|
|
||||||
- POSTGRES_DB=postgres
|
|
||||||
- POSTGRES_USER=postgres
|
|
||||||
- POSTGRES_PASSWORD=postgres
|
|
||||||
ports:
|
|
||||||
- 5432:5432
|
|
||||||
|
|
||||||
mailhog:
|
|
||||||
image: arjenz/mailhog # Copy of mailhog/MailHog to support linux/arm64
|
|
||||||
ports:
|
|
||||||
- 8025:8025 # web ui
|
|
||||||
- 1025:1025 # smtp server
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
postgres:
|
|
||||||
driver: local
|
|
||||||
@@ -13,10 +13,8 @@
|
|||||||
"db:create-saml-database:deploy": "env SAML_DATABASE_URL=\"${SAML_DATABASE_URL}\" tsx ./src/scripts/create-saml-database.ts",
|
"db:create-saml-database:deploy": "env SAML_DATABASE_URL=\"${SAML_DATABASE_URL}\" tsx ./src/scripts/create-saml-database.ts",
|
||||||
"db:create-saml-database:dev": "dotenv -e ../../.env -- tsx ./src/scripts/create-saml-database.ts",
|
"db:create-saml-database:dev": "dotenv -e ../../.env -- tsx ./src/scripts/create-saml-database.ts",
|
||||||
"db:push": "prisma db push --accept-data-loss",
|
"db:push": "prisma db push --accept-data-loss",
|
||||||
"db:up": "docker compose up -d",
|
"db:setup": "pnpm db:migrate:dev && pnpm db:create-saml-database:dev",
|
||||||
"db:setup": "pnpm db:up && pnpm db:migrate:dev && pnpm db:create-saml-database:dev",
|
|
||||||
"db:start": "pnpm db:setup",
|
"db:start": "pnpm db:setup",
|
||||||
"db:down": "docker compose down",
|
|
||||||
"format": "prisma format",
|
"format": "prisma format",
|
||||||
"generate": "prisma generate",
|
"generate": "prisma generate",
|
||||||
"lint": "eslint ./src --fix",
|
"lint": "eslint ./src --fix",
|
||||||
|
|||||||
@@ -10,6 +10,9 @@
|
|||||||
"dependsOn": ["@formbricks/api#build"],
|
"dependsOn": ["@formbricks/api#build"],
|
||||||
"persistent": true
|
"persistent": true
|
||||||
},
|
},
|
||||||
|
"@formbricks/database#setup": {
|
||||||
|
"dependsOn": ["db:up"]
|
||||||
|
},
|
||||||
"@formbricks/demo#go": {
|
"@formbricks/demo#go": {
|
||||||
"cache": false,
|
"cache": false,
|
||||||
"dependsOn": ["@formbricks/js#build"],
|
"dependsOn": ["@formbricks/js#build"],
|
||||||
@@ -224,6 +227,10 @@
|
|||||||
"db:start": {
|
"db:start": {
|
||||||
"cache": false
|
"cache": false
|
||||||
},
|
},
|
||||||
|
"db:up": {
|
||||||
|
"cache": false,
|
||||||
|
"outputs": []
|
||||||
|
},
|
||||||
"dev": {
|
"dev": {
|
||||||
"cache": false,
|
"cache": false,
|
||||||
"persistent": true
|
"persistent": true
|
||||||
|
|||||||
Reference in New Issue
Block a user