Docker installation accessible from the web with apache

I am running a docker-compose of vikunja and all the services work well in my local network (db, api, frontend, proxy), my compose yml file is below.

services:
  db:
    image: mariadb:10
    command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    environment:
      MYSQL_ROOT_PASSWORD: supersecret
      MYSQL_USER: vikunja
      MYSQL_PASSWORD: secret
      MYSQL_DATABASE: vikunja
    volumes:
      - ./db:/var/lib/mysql
    restart: unless-stopped
####
  api:
    image: vikunja/api
    environment:
      VIKUNJA_DATABASE_HOST: db
      VIKUNJA_DATABASE_PASSWORD: secret
      VIKUNJA_DATABASE_TYPE: mysql
      VIKUNJA_DATABASE_USER: vikunja
      VIKUNJA_DATABASE_DATABASE: vikunja
      VIKUNJA_SERVICE_JWTSECRET: supersecret
      VIKUNJA_SERVICE_FRONTENDURL: http://vikunja.myurl.com/
    ports:
      - 3456:3456
    volumes:
      - ./files:/app/vikunja/files
    depends_on:
      - db
    restart: unless-stopped
###  
  frontend:
    image: vikunja/frontend
    ports:
      - 8081:80
    environment:
      VIKUNJA_API_URL: http://192.168.40.200:3456/api/v1
    restart: unless-stopped
  proxy:
    image: nginx
    ports:
      - 75:80 #<== custom port
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
    depends_on:
      - api
      - frontend
    restart: unless-stopped

I want to make my installation available from outside my LAN, and since my server runs apache, I figure I could use apache as my reverse proxy to route my url ( http://vikunja.myurl.com/ ) to the Nginx proxy server that Vikunja is using (in my case in localserver port 75). I created an apache conf as below,

<VirtualHost *:80>
        ServerName vikunja.myurl.com

        # reverse proxy
        RewriteEngine on
        ProxyPreserveHost On
        ProxyRequests Off
        AllowEncodedSlashes On
        ProxyPass / http://localhost:75/
        ProxyPassReverse / http://localhost:75/
</VirtualHost>

But my url http://vikunja.myurl.com/ fails to properly load the login page (it is stuck on loading). If I use the url in my local network, it works without issues.

Am I doing something wrong with the apache config file? Thanks for the help.

What’s in the apache logs?

Is your apache running on the docker host or in another docker container?

Apache was running locally in the machine. The issue was the line below that had to be commented out otherwise it would conflict with the public url.

VIKUNJA_API_URL: http://192.168.40.200:3456/api/v1