Hello there! i am just new to OpenRemote and learning with this great open source IoT platform. But afraid to say that i am unable to make any white label settings through custom deployment on this platform as per it has mentioned to do. I have been gone through every possible tutorial regarding this from OpenRemote including with YouTube video on this, but didn’t get any clear detailed explanation how to do this through custom deployment and nothing happened to changed/worked on the platform with logos and texts. Any further help to fix this issue would be appreciated a lot. Thanks.
Hi @kpin404 and welcome to the forum
Please share your manager_config.json and also
tree deployment
Let’s make sure everything is in place
Hello pcr! Thank you very much for your prompt feedback. I really appeciated.
Actually, i have followed openreomte YouTube video How to: white labeling of your free open source IoT platform - YouTube How to: white labeling of your free open source IoT platform, but sorry to say that i didn’t work at all. Herein the manager_config.json file:
"realms": {
"default": {
"appTitle": "ACME IoT",
"headers": [
"map", "assets", "rules", "insights", "language", "users", "roles", "account", "logs", "logout"
],
"styles": ":host > * {--or-app-color2: #F9F9F9; --or-app-color3: #22211f; --or-app-color4: #1b5630; --or-app-color5: #CCCCCC;}",
"logo": "/images/logo.png",
"logoMobile": "/images/logo-mobile.png",
"favicon": "/images/favicon.png",
"language": "en"
},
"master": {
"appTitle": "ACME Master",
"styles": ":host > * {--or-app-color2: #F9F9F9; --or-app-color3: #22211f; --or-app-color4: #275582; --or-app-color5: #CCCCCC;}",
"logo": "/images/logo.png",
"logoMobile": "/images/logo-mobile.png",
"favicon": "/images/logo-favicon.png",
"language": "en"
},
"clienta": {
"appTitle": "Client A",
"styles": ":host > * {--or-app-color2: #F9F9F9; --or-app-color3: #22211f; --or-app-color4: #275582; --or-app-color5: #CCCCCC;}",
"logo": "/images/clienta-logo.png",
"logoMobile": "/images/clienta-logoMobile.png",
"favicon": "/images/clienta-favicon.png",
"language": "de"
}
}
}
docker-compose.yml file code:
# OpenRemote v3
#
# Profile that runs the stack by default on https://localhost using a self-signed SSL certificate,
# but optionally on https://$OR_HOSTNAME with an auto generated SSL certificate from Letsencrypt.
#
# It is configured to use the AWS logging driver.
#
version: '2.4'
volumes:
proxy-data:
manager-data:
postgresql-data:
services:
proxy:
image: openremote/proxy:${PROXY_VERSION:-latest}
restart: always
depends_on:
manager:
condition: service_healthy
ports:
- "80:80"
- "${OR_SSL_PORT:-443}:443"
- "8883:8883"
volumes:
- proxy-data:/deployment
environment:
LE_EMAIL: ${OR_EMAIL_ADMIN:-}
DOMAINNAME: ${OR_HOSTNAME:-localhost}
DOMAINNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
# USE A CUSTOM PROXY CONFIG - COPY FROM https://raw.githubusercontent.com/openremote/proxy/main/haproxy.cfg
#HAPROXY_CONFIG: '/data/proxy/haproxy.cfg'
postgresql:
restart: always
image: openremote/postgresql:${POSTGRESQL_VERSION:-latest}
volumes:
- postgresql-data:/var/lib/postgresql/data
- manager-data:/storage
keycloak:
restart: always
image: openremote/keycloak:${KEYCLOAK_VERSION:-latest}
depends_on:
postgresql:
condition: service_healthy
volumes:
- ./deployment:/deployment
environment:
KEYCLOAK_ADMIN_PASSWORD: ${OR_ADMIN_PASSWORD:-secret}
KC_HOSTNAME: ${OR_HOSTNAME:-localhost}
KC_HOSTNAME_PORT: ${OR_SSL_PORT:--1}
manager:
# privileged: true
restart: always
image: openremote/manager:${MANAGER_VERSION:-latest}
depends_on:
keycloak:
condition: service_healthy
environment:
OR_SETUP_TYPE:
OR_ADMIN_PASSWORD:
OR_SETUP_RUN_ON_RESTART:
OR_EMAIL_HOST:
OR_EMAIL_USER:
OR_EMAIL_PASSWORD:
OR_EMAIL_X_HEADERS:
OR_EMAIL_FROM:
OR_EMAIL_ADMIN:
OR_HOSTNAME: ${OR_HOSTNAME:-localhost}
OR_ADDITIONAL_HOSTNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
OR_SSL_PORT: ${OR_SSL_PORT:--1}
OR_DEV_MODE: ${OR_DEV_MODE:-false}
# The following variables will configure the demo
OR_FORECAST_SOLAR_API_KEY:
OR_OPEN_WEATHER_API_APP_ID:
OR_SETUP_IMPORT_DEMO_AGENT_KNX:
OR_SETUP_IMPORT_DEMO_AGENT_VELBUS:
volumes:
- manager-data:/storage
Tree deployment:
Local Disk (C:)/openremote/deployment/manager/app/images,manager_config.json
Hi @kpin404
I think your missing something in the volumes at the end?
volumes:
- temp-data:/tmp
- ./deployment:/deployment
- manager-data:/storage
Hello @pcr You mean i have to add your provided code at the end in docker-compose.yml file? i am a bit confused between docker-compose.yml file and manager_config.json file, which one to edit and why to create manager_config.json file? Thanks.
HI,
You need to add - ./deployment:/deployment at manager volume (yml file) then pull and up image.
and if you add - temp-data:/tmp at manager volume then you need to add same at top of volume section .
you can configure same from ui also(manager_config).
Hello @apurba Thank you for keep assisting. I appreciate. Please allow me sometime to work on it again and update with the same. Thanks.
Hello @apurba you mean to add like this as i have done in yml file below:
# OpenRemote v3
#
# Profile that runs the stack by default on https://localhost using a self-signed SSL certificate,
# but optionally on https://$OR_HOSTNAME with an auto generated SSL certificate from Letsencrypt.
#
# It is configured to use the AWS logging driver.
#
version: '2.4'
volumes:
proxy-data:
manager-data:
postgresql-data:
- temp-data:/tmp
services:
proxy:
image: openremote/proxy:${PROXY_VERSION:-latest}
restart: always
depends_on:
manager:
condition: service_healthy
ports:
- "80:80"
- "${OR_SSL_PORT:-443}:443"
- "8883:8883"
volumes:
- proxy-data:/deployment
environment:
LE_EMAIL: ${OR_EMAIL_ADMIN:-}
DOMAINNAME: ${OR_HOSTNAME:-localhost}
DOMAINNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
# USE A CUSTOM PROXY CONFIG - COPY FROM https://raw.githubusercontent.com/openremote/proxy/main/haproxy.cfg
#HAPROXY_CONFIG: '/data/proxy/haproxy.cfg'
postgresql:
restart: always
image: openremote/postgresql:${POSTGRESQL_VERSION:-latest}
volumes:
- postgresql-data:/var/lib/postgresql/data
- manager-data:/storage
keycloak:
restart: always
image: openremote/keycloak:${KEYCLOAK_VERSION:-latest}
depends_on:
postgresql:
condition: service_healthy
volumes:
- ./deployment:/deployment
environment:
KEYCLOAK_ADMIN_PASSWORD: ${OR_ADMIN_PASSWORD:-secret}
KC_HOSTNAME: ${OR_HOSTNAME:-localhost}
KC_HOSTNAME_PORT: ${OR_SSL_PORT:--1}
manager:
# privileged: true
restart: always
image: openremote/manager:${MANAGER_VERSION:-latest}
depends_on:
keycloak:
condition: service_healthy
environment:
OR_SETUP_TYPE:
OR_ADMIN_PASSWORD:
OR_SETUP_RUN_ON_RESTART:
OR_EMAIL_HOST:
OR_EMAIL_USER:
OR_EMAIL_PASSWORD:
OR_EMAIL_X_HEADERS:
OR_EMAIL_FROM:
OR_EMAIL_ADMIN:
OR_HOSTNAME: ${OR_HOSTNAME:-localhost}
OR_ADDITIONAL_HOSTNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
OR_SSL_PORT: ${OR_SSL_PORT:--1}
OR_DEV_MODE: ${OR_DEV_MODE:-false}
# The following variables will configure the demo
OR_FORECAST_SOLAR_API_KEY:
OR_OPEN_WEATHER_API_APP_ID:
OR_SETUP_IMPORT_DEMO_AGENT_KNX:
OR_SETUP_IMPORT_DEMO_AGENT_VELBUS:
volumes:
- temp-data:/tmp
- ./deployment:/deployment
- manager-data:/storage
Please have a check and let me asssist further. Thanks.
Hello @apurba after updating docker-compose.yml file and then pull and up the image i run Windows power shell to run docker-compose -p openremote up command and got a error as mentioned below:
Please have a check and let me asssist further to fix this. Thanks.
Hi @kpin404,
did you noticed, there is a “appeaerance” menu? there you can customize your openremote easily.
Hello @Denis Thank you for your feedback. I appreciated it. I just gone through this setting to check with this, but its not working at all. please have check the screenshot.
Secondly, as a tech savvy by nature i would like to do this through command prompt. Hope you understand. Thanks.
Hi @kpin404,
so, use the origin docker stack and add to the last line:
- ./deployment:/deployment
it should look like:
volumes:
- manager-data:/storage
- ./deployment:/deployment
watch for the indentations.
after that: create the deployment tree…
where your docker-compose.yml is based you make this folder tree.
deployment
├───keycloak
│ └───themes
│ └───openremote
│ ├───account
│ ├───admin
│ └───login
├───manager
│ ├───app
│ ├───consoleappconfig
│ └───images
└───map
./deployment/manager/app
there you put in:
and can customize your appeaerance.
to change the keycloak themes, you have to download the theme package
there you can customize the keycloak Login, Account and Admin pages.
Hello @Denis Thank you for keep assisting me further on this. I appreciate. Please allow me sometime to workout on this and get back with an update. Thanks.
Hello,
Use This
OpenRemote v3
Profile that runs the stack by default on https://localhost using a self-signed SSL certificate,
but optionally on https://$OR_HOSTNAME with an auto generated SSL certificate from Letsencrypt.
It is configured to use the AWS logging driver.
version: ‘2.4’
volumes:
proxy-data:
manager-data:
postgresql-data:
services:
proxy:
image: openremote/proxy:${PROXY_VERSION:-latest}
restart: always
depends_on:
manager:
condition: service_healthy
ports:
- “80:80”
- “${OR_SSL_PORT:-443}:443”
- “8883:8883”
volumes:
- proxy-data:/deployment
environment:
LE_EMAIL: ${OR_EMAIL_ADMIN:-}
DOMAINNAME: ${OR_HOSTNAME:-localhost}
DOMAINNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
# USE A CUSTOM PROXY CONFIG - COPY FROM https://raw.githubusercontent.com/openremote/proxy/main/haproxy.cfg
#HAPROXY_CONFIG: ‘/data/proxy/haproxy.cfg’
postgresql:
restart: always
image: openremote/postgresql:${POSTGRESQL_VERSION:-latest}
volumes:
- postgresql-data:/var/lib/postgresql/data
- manager-data:/storage
keycloak:
restart: always
image: openremote/keycloak:${KEYCLOAK_VERSION:-latest}
depends_on:
postgresql:
condition: service_healthy
volumes:
- ./deployment:/deployment
environment:
KEYCLOAK_ADMIN_PASSWORD: ${OR_ADMIN_PASSWORD:-secret}
KC_HOSTNAME: ${OR_HOSTNAME:-localhost}
KC_HOSTNAME_PORT: ${OR_SSL_PORT:–1}
manager:
privileged: true
restart: always
image: openremote/manager:${MANAGER_VERSION:-latest}
depends_on:
keycloak:
condition: service_healthy
environment:
OR_SETUP_TYPE:
OR_ADMIN_PASSWORD:
OR_SETUP_RUN_ON_RESTART:
OR_EMAIL_HOST:
OR_EMAIL_USER:
OR_EMAIL_PASSWORD:
OR_EMAIL_X_HEADERS:
OR_EMAIL_FROM:
OR_EMAIL_ADMIN:
OR_HOSTNAME: ${OR_HOSTNAME:-localhost}
OR_ADDITIONAL_HOSTNAMES: ${OR_ADDITIONAL_HOSTNAMES:-}
OR_SSL_PORT: ${OR_SSL_PORT:--1}
OR_DEV_MODE: ${OR_DEV_MODE:-false}
# The following variables will configure the demo
OR_FORECAST_SOLAR_API_KEY:
OR_OPEN_WEATHER_API_APP_ID:
OR_SETUP_IMPORT_DEMO_AGENT_KNX:
OR_SETUP_IMPORT_DEMO_AGENT_VELBUS:
volumes:
- manager-data:/storage
- ./deployment:/deployment
and let me if there is any error.
Hello @Denis followed your process step-by-step and got internal server error.
Hello @apurba, Thanks for keep assisting. i am confused which one to use? Please let me clear with a step-by-step process. Thanks.
Hello @apurba uploaded your suggested code in docker-compose.yml file and nothing happened.
Hi,
pls post error log
Sorry, but this is useless. To be honest, as a tech savvy by nature you should be able to debug by yourself, you also should use the frontend provided tool to customize the appearance.
Hello @Denis Okay! Got it. I am still trying to debug it. Now first i need to fix internal server error and then continue with the debugging customization process further. I think i wouldn’t have to say tech savvy myself, it makes things more complicated and put more load to fix it again rather than just asking for how to make it work Thanks.