Merge pull request #928 from danestves/add-engram-template

feat(blueprint): add engram template
This commit is contained in:
Mauricio Siu
2026-07-08 10:23:34 -06:00
committed by GitHub
4 changed files with 74 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
version: "3.8"
services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: engram
POSTGRES_PASSWORD: engram
POSTGRES_DB: engram_cloud
volumes:
- engram-postgres:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U engram -d engram_cloud"]
interval: 5s
timeout: 3s
retries: 10
engram:
image: ghcr.io/gentleman-programming/engram:1.16.3
restart: unless-stopped
depends_on:
postgres:
condition: service_healthy
environment:
ENGRAM_DATABASE_URL: postgres://engram:engram@postgres:5432/engram_cloud?sslmode=disable
ENGRAM_JWT_SECRET: ${ENGRAM_JWT_SECRET}
ENGRAM_CLOUD_TOKEN: ${ENGRAM_CLOUD_TOKEN}
ENGRAM_CLOUD_ADMIN: ${ENGRAM_CLOUD_ADMIN}
ENGRAM_CLOUD_ALLOWED_PROJECTS: ${ENGRAM_CLOUD_ALLOWED_PROJECTS}
ENGRAM_CLOUD_HOST: "0.0.0.0"
ENGRAM_PORT: "8080"
command: ["cloud", "serve"]
expose:
- 8080
volumes:
engram-postgres:

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

View File

@@ -0,0 +1,17 @@
{
"id": "engram",
"name": "Engram",
"version": "1.16.3",
"description": "Persistent memory for AI coding agents — self-hosted Engram Cloud sync server with a web dashboard, backed by PostgreSQL.",
"logo": "engram.png",
"links": {
"github": "https://github.com/Gentleman-Programming/engram",
"website": "",
"docs": "https://github.com/Gentleman-Programming/engram/blob/main/docs/engram-cloud/README.md"
},
"tags": [
"ai",
"memory",
"developer-tools"
]
}

View File

@@ -0,0 +1,20 @@
[variables]
main_domain = "${domain}"
jwt_secret = "${password:64}"
cloud_token = "${password:48}"
admin_token = "${password:48}"
[config]
env = [
"ENGRAM_JWT_SECRET=${jwt_secret}",
"ENGRAM_CLOUD_TOKEN=${cloud_token}",
"ENGRAM_CLOUD_ADMIN=${admin_token}",
"ENGRAM_CLOUD_ALLOWED_PROJECTS=*",
]
mounts = []
[[config.domains]]
serviceName = "engram"
port = 8080
host = "${main_domain}"
path = "/dashboard"