Really disappointed at the poor installation instructions

I’ve tried several times to install on docker, on windows environment, but no success.

I’ve used these installation instructions, as there seems to be no other.

https://docs.cortezaproject.org/corteza-docs/2023.9/devops-guide/examples/deploy-offline/index.html

The Video on YOUTUBE is very very old.

I’m at a loss.

Are there installation instructions that actually work for docker, on windows.

Would love to use CORTEZA, however, I cannot even get it loaded.

So what will happen when I have a production problem.

Would be glad to receive some useful instructions please.

totally agree
i cant even get my other questions answered after so many days…

and why i cant generate quote etc

@Eugene @kolinfluence The people behind Corteza try to be as involved with the community as possible but we are few with limited time and resources so it can take time to respond. The documentation and surrounding resources may be incomplete, hard to understand, and outdated, so please note your thoughts and suggest improvements.

If you need consistent assistance you can reach out here to get a support contract in place.




Those instructions were written & tested on a Linux/MacOS. Since it’s mostly just Docker stuff, it shouldn’t be much different (famous last words). When you run windows/mac docker client, there are some security prompts which you need to accept for your container to get appropriate access; did you do those?

What step are you stuck on? Please provide some context, errors, logs; else we can’t really help.

If it helps, these are some of my configs that do work just fine (MacOS though)

########################################################################################################################
# docker-compose supports environment variable interpolation/substitution in compose configuration file
# (more info: https://docs.docker.com/compose/environment-variables)

########################################################################################################################
# General settings
DOMAIN=localhost:18091
VERSION=2023.9

########################################################################################################################
# Database connection
DB_DSN=postgres://corteza:corteza@db:5432/corteza?sslmode=disable

########################################################################################################################
# Server settings

# Running all-in-one and serving web applications directly from server container
HTTP_WEBAPP_ENABLED=true

# Disabled, we do not need detailed persistent logging of actions in local env
ACTIONLOG_ENABLED=false

########################################################################################################################
# SMTP (mail sending) settings

# Point this to your local or external SMTP server if you want to send emails.
# In most cases, Corteza can detect that SMTP is disabled and skips over sending emails without an error
#SMTP_HOST=smtp-server.example.tld:587
#SMTP_USER=postmaster@smtp-server.example.tld
#SMTP_PASS=this-is-your-smtp-password
#SMTP_FROM='"Demo" <info@your-demo.example.tld>'
version: '3.5'

services:
  server:
    image: cortezaproject/corteza:${VERSION}
    restart: always
    env_file: [ .env ]
    platform: linux/amd64
    depends_on: [ db ]
    ports: [ "127.0.0.1:18091:80" ]
    volumes:
      - "./dd/server:/data"

  db:
    # PostgreSQL Database
    # See https://hub.docker.com/_/postgres for details
    # Support for postgres 13, 14 and 15 is available in the latest version of Corteza
    image: postgres:15
      #    networks: [ internal ]
    restart: always
    platform: linux/amd64
    healthcheck: { test: ["CMD-SHELL", "pg_isready -U corteza"], interval: 10s, timeout: 5s, retries: 5 }
    volumes:
      - "dbdata:/var/lib/postgresql/data"
    environment:
      # Warning: these are values that are only used on 1st start
      #          if you want to change it later, you need to do that
      #          manually inside db container
      POSTGRES_USER:     corteza
      POSTGRES_PASSWORD: corteza

volumes:
  dbdata:

@tjerman

Thank you very much this works perfectly now.

COMMENT OUT THE platform variable …

It has no effect.

This installs nicely on docker for windows.

Now I am having fun, doing some applications.

MANY MANY thanks.

Although I can get the local version working on my mac m1 I cannot get the production version to work. I get an error

! server The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested

Ultimately I just want to run on lightsail container (but any advice of something similarly priced would also be good)

I have commented out the platform

EDIT: when I go to the localhost It displays the folllowing error on screen

Corteza server initializing
FAIL Scheduler: stopped
PASS Mail
PASS Corredor

NAME                  IMAGE                           COMMAND                  SERVICE   CREATED              STATUS                                 PORTS
production-db-1       postgres:15                     "docker-entrypoint.s…"   db        About a minute ago   Up About a minute (healthy)            5432/tcp
production-server-1   cortezaproject/corteza:2023.9   "./bin/corteza-serve…"   server    About a minute ago   Up About a minute (health: starting)   127.0.0.1:18091->80/tcp

and your configs are the same as the ones pasted above?

I have used one of the other .envs referenced on here, but broadly the same I think

########################################################################################################################
# docker-compose supports environment variable interpolation/substitution in compose configuration file
# (more info: https://docs.docker.com/compose/environment-variables)

########################################################################################################################
# General settings
DOMAIN=localhost:18091
VERSION=2023.9

########################################################################################################################
# Database connection
DB_DSN=postgres://corteza:corteza@db:5432/corteza?sslmode=disable

########################################################################################################################
# Server settings

# Running all-in-one and serving web applications directly from server container
HTTP_WEBAPP_ENABLED=true

# Disabled, we do not need detailed persistent logging of actions in local env
ACTIONLOG_ENABLED=false

########################################################################################################################
# SMTP (mail sending) settings

# Point this to your local or external SMTP server if you want to send emails.
# In most cases, Corteza can detect that SMTP is disabled and skips over sending emails without an error
#SMTP_HOST=smtp-server.example.tld:587
#SMTP_USER=postmaster@smtp-server.example.tld
#SMTP_PASS=this-is-your-smtp-password
#SMTP_FROM='"Demo" <info@your-demo.example.tld>'

This is my yaml

#version: '3.5'

services:
  server:
    image: cortezaproject/corteza:${VERSION}
    restart: always
    env_file: [ .env ]
    depends_on: [ db ]
    ports: [ "127.0.0.1:18091:80" ]
    volumes:
      - "./dd/server:/data"

  db:
    # PostgreSQL Database
    # See https://hub.docker.com/_/postgres for details
    # Support for postgres 13, 14 and 15 is available in the latest version of Corteza
    image: postgres:15
      #    networks: [ internal ]
    restart: always
    healthcheck: { test: ["CMD-SHELL", "pg_isready -U corteza"], interval: 10s, timeout: 5s, retries: 5 }
    volumes:
      - "dbdata:/var/lib/postgresql/data"
    environment:
      # Warning: these are values that are only used on 1st start
      #          if you want to change it later, you need to do that
      #          manually inside db container
      POSTGRES_USER:     corteza
      POSTGRES_PASSWORD: h62!*He6de

volumes:
  dbdata:

I’m also have a similar issue as @nickwild. I’m getting the “FAIL Scheduler: stopped” message when I go to localhost. I was able to have it run before, but now it isn’t.

Screenshot from 2024-06-22 08-14-46

Here be me confs
docker-compose.yaml

version: '3.5'


services:
  server:
    image: cortezaproject/corteza:${VERSION}
    restart: always
    env_file: [ .env ]
    platform: linux/amd64
    depends_on: [ db ]
    networks: [ cortezatest, internal ]
    ports:
     - "80:80"
    volumes: [ "./data/server:/data" ]

  db:
    # MySQL Database
    #https://hub.docker.com/r/percona/percona-server for details
    image: percona
    #command: --sort_buffer_size=512K
    restart: always
    platform: linux/amd64
    volumes: [ "./data/db:/var/lib/mysql" ]
    environment:
      MYSQL_DATABASE: dbname
      MYSQL_USER:     dbuser
      MYSQL_password: dbpass
      MYSQL_ROOT_PASSWORD: random
    healthcheck: { test: ["CMD", "mysqladmin", "ping", "-h", "localhost"],
    timeout: 20s,
    retries: 10 }
    networks: [ cortezatest, internal ]

networks:
  internal: {}
  cortezatest: { external: true }

.env

###############################################################################
# General settings
DOMAIN=localhost
VERSION=2023.9

#ENVIRONMENT=dev

###############################################################################
# Database connection

DB_DSN=dbuser:dbpass@tcp(db:3306)/dbname?collation-utf8mb4_general_ci

###############################################################################
# Server settings

# HTTP Address
#HTTP_ADDR=localhost:80

# Serve Corteza webapps alongside API
HTTP_WEBAPP_ENABLED=true

# Disabled, we do not need detailed persistent logging of actions is local env
ACTIONLOG_ENABLED=false

# Send action log to container logs as well
# ACTIONLOG_DEBUG=true

# Uncomment for extra debug info if something goes wrong
# LOG_LEVEL=debug

# User nicer and colorful log instead of JSON
# LOG_DEBUG=true

I was following these instructions:
https://docs.cortezaproject.org/corteza-docs/2023.9/devops-guide/examples/deploy-offline/multi-mysql.html

Your Postgres password doesn’t seem to match across your .env and docker-compose.yaml files. I’m entirely new though (I’m just here trying to resolve my own installation issue!) and so I don’t know if this is causing your issue.