Error login on docker image

Hi,

I have downloaded the docker imagem and when I try to login with admin@dotcms.com and admin as password the screen stops.

I saw this errors on logs:


21:51:29.415 INFO util.SecurityLogger - class com.dotmarketing.cms.login.factories.LoginFactory : User (dotcms.org.1) password was re-hashed 600000 times – ip:177.200.208.82,user:null

21:51:29.702 INFO util.SecurityLogger - class com.dotcms.cms.login.LoginServiceAPIFactory$LoginServiceImpl : User dotcms.org.1 has successfully login from IP: 177.200.208.82 – ip:177.200.208.82,user:Admin User [ID: dotcms.org.1][email:admin@dotcms.com]

21:51:29.932 WARN rest.WebResource - InitDataObject Error: uri:/api/v1/menu err:Invalid User

21:51:29.932 WARN rest.WebResource - Invalid User

21:51:29.932 WARN rest.WebResource - com.dotcms.rest.WebResource.authenticate(WebResource.java:559)

21:51:29.933 WARN exception.ForbiddenException - {“error”:“dotcms.api.error.forbidden: Invalid User”}

com.dotcms.rest.exception.ForbiddenException: HTTP 403 Forbidden

I think a little more context would be super helpful. Are you using just a plain docker runcommand, or a compose file? Are you cloning an existing environment?

Also, if this is a fresh install you need to pass an environmental switch like -e DOT_INITIAL_ADMIN_PASSWORD=admin to force the password to admin. Otherwise, you can find the password the docker logs on dotcms initial set up. It will look something like this:

Thank you for your quick response Tcaruth.

I apologize for not providing all the information. In my eagerness to resolve the issue, I didn’t follow the correct steps.

Here are the steps I followed to install dotCMS:

I downloaded the docker-compose.yml file from \https://dev.dotcms.com/docs/current-releases
And I’m using it in Portainer, a docker manager.

I only commented out the line #JAVA_TOOL_OPTIONS: ‘-XX:UseSVE=0’ because it causes an error and prevents the VM from starting.

You can access the site \http://149.102.136.153:8082/dotAdmin with the username admin@dotcms.com and password admin to verify the error and try to help me.

The startup log file:

docker-compose.yml:

This Docker Compose file is used to spin up a local dotCMS container using Docker.

Simply place this file in the desired working directory and run ‘docker compose up’ to get started.

Version: 25.07.10-1v1 LTS

Demo Site Excluded

Starter Image: 20250528

services:
db:
image: pgvector/pgvector:pg16
command: postgres -c ‘max_connections=400’ -c ‘shared_buffers=128MB’
environment:
POSTGRES_USER: ‘dotcmsdbuser’
POSTGRES_PASSWORD: ‘password’
POSTGRES_DB: ‘dotcms’
volumes:

  • dbdata:/var/lib/postgresql/data
    networks:
  • db_net
    healthcheck:
    test: [“CMD-SHELL”, “pg_isready -U dotcmsdbuser -d dotcms -h localhost -p 5432”]
    interval: 10s
    timeout: 5s
    retries: 5
    restart: unless-stopped

opensearch:
image: opensearchproject/opensearch:1
environment:
cluster.name: “elastic-cluster”
discovery.type: “single-node”
bootstrap.memory_lock: “true”
OPENSEARCH_JAVA_OPTS: “-Xmx1G”
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
ports:

  • “9200:9200”
  • “9600:9600”
    volumes:
  • opensearch-data:/usr/share/opensearch/data
    networks:
  • opensearch-net
    deploy:
    resources:
    limits:
    cpus: “1.0”
    memory: 2G

dotcms:
image: dotcms/dotcms:25.07.10_lts_v1_ff1e4c7
environment:
CMS_JAVA_OPTS: '-Xmx1g ’
#JAVA_TOOL_OPTIONS: ‘-XX:UseSVE=0’
LANG: ‘C.UTF-8’
TZ: ‘UTC’
DB_BASE_URL: “jdbc:postgresql://db/dotcms”
DB_USERNAME: ‘dotcmsdbuser’
DB_PASSWORD: ‘password’
DOT_ES_AUTH_BASIC_PASSWORD: ‘admin’
DOT_ES_ENDPOINTS: ‘https://opensearch:9200
DOT_INITIAL_ADMIN_PASSWORD: ‘admin’
DOT_DOTCMS_CLUSTER_ID: ‘dotcms-production’
GLOWROOT_ENABLED: ‘true’
#GLOWROOT_WEB_UI_ENABLED: ‘true’ # Enable glowroot web ui on localhost. do not use in production

  #CUSTOM_STARTER_URL: 'https://repo.dotcms.com/artifactory/libs-release-local/com/dotcms/starter/empty_20250528/starter-empty_20250528.zip'
depends_on:
  - db
  - opensearch      
volumes:
  - cms-shared:/data/shared
  #- {license_local_path}/license.zip:/data/shared/assets/license.zip
networks:
  - db_net
  - opensearch-net
ports:
  - "8082:8082"
  - "8443:8443"
  - "4000:4000" # Glowroot web ui if enabled

networks:
db_net:
opensearch-net:

volumes:
cms-shared:
dbdata:
opensearch-data:

Thanks in advance

Charles Bauer

Looks like you’re not getting a cookie set because it’s not a secure connection. You can probably get a cert from Let’s Encrypt to get past this error.

Otherwise, there may be some configuration you can do in web.xml, but I have no experience in that.

I just found this related info in the docs, that you may be able to use

I tried to configure using the options below but it not seems to have effects.
Then thinking and looking around using the information you said I accessed the admin panel using the https link and port that is provided on the docker imagem and it worked fine:

Use: https://149.102.136.153:8443/dotAdmin
Instead of: http://149.102.136.153:8082/dotAdmin

I would recomend to document it on the official web site to help others.

Thanks all.

1 Like