Comment on Ideon: I'm building a self-hosted project cockpit on an infinite canvas (v0.5 update)

<- View Parent
RanchBranch@anarchist.nexus ⁨1⁩ ⁨week⁩ ago

I might be stupid, but I didn’t want to run the install script because I try and run everything via compose files in Komodo.

I don’t know if this helps, but this is what my compose looks like: (Side note, I just put the ENV values directly into the compose. I know this is not recommended, so I put the values to use if you actually mount the env_file like you’re supposed to. )

services:
# ------- Ideon-App ------- 
  ideon-app:
    image: ghcr.io/3xpyth0n/ideon:latest
    container_name: ideon-app

# If you want to do it correctly, mount the ENV_FILE
#    env_file:
#      - ${ENV_FILE:-.env}
# If you want to do it janky, follow me
    environment: #If you mount a ENV_File, only PUID and PGID are needed below.
      PUID: 1000 # Optional: User ID for file ownership (default: 1001)
      PGID: 1000 # Optional: Group ID for file ownership (default: 1001)

# From the ENV_FILE:
      APP_PORT: 3001 # Host port to expose the app (container listens on 3000) # I had Homepage on port 3000 so I moved Ideon to 3001
      APP_URL: http://MYMACHINESIP:3001 # Public base URL of the app (used for invitations and SSO auth)
      TIMEZONE: UTC # Canonical timezone for server logs ONLY
      ### Database
      #SQLITE_PATH=./storage/dev.db # Override SQLite path (optional) # Note: PostgreSQL variables are not required in "development" mode, SQLite is used automatically (storage/dev.db).
      DB_HOST: ideon-db # PostgreSQL host or service name (Docker Compose: ideon-db)
      DB_PORT: 5432 # PostgreSQL port (default 5432)
      DB_NAME: ideon # PostgreSQL database name
      DB_USER: ideon # PostgreSQL username
      DB_PASS: # I ran "openssl rand -base64 15" in the terminal to get PW # PostgreSQL password
      SECRET_KEY: # I ran "openssl rand -hex 32" in the terminal to get PW

    depends_on:
      ideon-db:
        condition: service_healthy
    restart: unless-stopped
    ports:
      - 3001:3001 #"${APP_PORT:-3000}:${APP_PORT:-3000}" 
    volumes:
      - /mnt/app/containers/ideon/app:/app/storage
    healthcheck:
      test:
        ["CMD", "curl", "-f", "http://localhost:3001/api/health"] #["CMD", "curl", "-f", "http://localhost:${APP_PORT:-3000}/api/health"]
      interval: 5s
      timeout: 5s
      retries: 5
      start_period: 10s

# ------- Ideon-DB ------- 
  ideon-db:
    image: postgres:16-alpine
    container_name: ideon-db
    restart: unless-stopped
    environment:
      POSTGRES_USER: ideon # ${DB_USER}
      POSTGRES_PASSWORD:  #same as DB_PASS   #${DB_PASS}
      POSTGRES_DB: ideon # ${DB_NAME} 
    volumes:
      - /mnt/app/containers/ideon/db:/var/lib/postgresql/data #I just hardmount everything
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U ideon -d ideon"] #["CMD-SHELL", "pg_isready -U ${DB_USER} -d ${DB_NAME}"]
      interval: 2s
      timeout: 5s
      retries: 5

So far I love it. I wanted to use it locally for some low level importance notes before I try to move more over and set it up with an actual mounted env file on a VPS.

My only thought so far is that its not the greatest on mobile, but I’m really not certain what that would even look like.

source
Sort:hotnewtop