DEV Community

Discussion on: 😡 Agonies, Despair and self hosted Redash BI server on Microsoft Azure cloud platform 😋 part 2

 
alxizr profile image
alxizr • Edited

for the # redash worker 1 & 2 services it is all the same as the # redash scheduler service. Pay attention to all the keys

Thread Thread
 
alxizr profile image
alxizr

for the # nginx service your keys are: image, ports, depends_on, links and restart, everything under each line suppose to be the value, so we need to indent it as well.

  nginx:
    image: redash/nginx:latest
    ports:
      - "8080:80"
    depends_on:
      - server
    links:
      - server:redash
    restart: always

Thread Thread
 
alxizr profile image
alxizr • Edited

yamllint.com/

This is a tool i often use when I need to write a long and complex YML file. I talked about it in my article about YML. There is a link in the first part of this series.

Just copy and paste your YML file content inside this tool's the editor and validate it. In case something is wrong, you will get a notification error.

Thread Thread
 
reconnect profile image
Reconnect

HI, Thanks for helping and suggesting the chnages in the yml file. Made the changes and checked with yamllint.com and validated. But still getting the following error:
ERROR - Exception in multi-container config parsing: Exception: System.NullReferenceException, Msg: Object reference not set to an instance ERROR - Start multi-container app failed.

Do you think there is an alternate approach to deploy using azure ACI: docker.com/blog/how-to-deploy-cont...

Following is the yml file:

docker-compose.yml

version: "3.9"

x-environment: &base_environment
PYTHONUNBUFFERED: 0
REDASH_WEB_WORKERS: 4
REDASH_LOG_LEVEL: "INFO"
REDASH_RATELIMIT_ENABLED: "false"
REDASH_REDIS_URL: "redis://redis_server:6379/0"
REDASH_MAIL_DEFAULT_SENDER: "redash@example.com"
REDASH_ADDITIONAL_QUERY_RUNNERS: "redash.query_runner.python"
REDASH_DATABASE_URL: "MY URL"

x-base_redash: &base_redash
environment:
<<: *base_environment
image: redash/redash:8.0.2.b37747
restart: always

services:
# redis
redis_server:
image: redis:alpine
container_name: redis_server_local
restart: unless-stopped

# redash server
server:
<<: *base_redash
command: server
ports:
- "5000:5000"
- "5678:5678"
depends_on:
- redis_server

# redash scheduler
scheduler:
<<: *base_redash
command: scheduler
depends_on:
- server
environment:
<<: *base_environment
QUEUES: "celery"
WORKERS_COUNT: 1

# redash worker 1
scheduled_worker:
<<: *base_redash
command: worker
depends_on:
- server
environment:
<<: *base_environment
QUEUES: "scheduled_queries,schemas"
WORKERS_COUNT: 1

# redash worker 2
adhoc_worker:
<<: *base_redash
command: worker
depends_on:
- server
environment:
<<: *base_environment
QUEUES: "queries"
WORKERS_COUNT: 2

# nginx - pay attention to the image name
nginx:
image: redash/nginx:latest
ports:
- "8080:80"
depends_on:
- server
links:
- server:redash
restart: always

Thread Thread
 
alxizr profile image
alxizr

regarding the ACI it can be a possible solution but I am not sure because i never tried it with the Redash. My experience with it was that when I did create containers with ACI, all of them should be on the same network so they could communicate.

Thread Thread
 
alxizr profile image
alxizr • Edited

regarding the error, I can not understand where it comes from, so what I will suggest is you isolate every service in the YML file and see when it occurs. You have 6 services and once you find the service that causing the error then we would be able to solve it hopefully

Thread Thread
 
reconnect profile image
Reconnect

hi, we were able to deploy using a single VM node and its working. We got a domain tied to it. After getting the cert for my domain, everything works except have issue with one the web route not working. If you know something about it and can provide some advise and help.

my-website.com doesn't work.

Whereas rest of the following 3 web routes works fine:
my-website.com
my-website.com
my-website.com