Running Traefik and Nginx Proxy Manager on the same Server

Here is an example docker-compose with OSS nginx

version: '3'

networks:
  traefik:

services:
  nginx:    
    image: nginx
    environment:
      - NGINX_HOST=nginx.docker.localhost
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=traefik"
      - "traefik.http.routers.nginx.entrypoints=web"
      - "traefik.http.routers.nginx.rule=HostRegexp(`{domain:.+}`)"
      - "traefik.http.routers.nginx.priority=1"
      - "traefik.http.routers.nginx.service=nginx"
      - "traefik.http.services.nginx.loadbalancer.server.port=80"
    networks:
      - traefik

  traefik:
    image: "traefik:v2.8"  
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.api.entrypoints=web"
      - "traefik.http.routers.api.rule=Host(`traefik.docker.localhost`)"
      - "traefik.http.routers.api.service=api@internal"
    command:
      - --providers.docker
      - --entryPoints.web.address=:80
      - --entryPoints.websecure.address=:443
      - --entryPoints.web.forwardedHeaders.insecure
      - --api.dashboard=true
      - --log.level=DEBUG
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - "80:80"
      - "443:443"
    networks:
      - traefik

It really doesn't matter what port nginx is listening on but you need to inform Traefik through the service label as seen in he example.