this post was submitted on 24 Nov 2023
3 points (100.0% liked)

Self-Hosted Main

515 readers
1 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

For Example

We welcome posts that include suggestions for good self-hosted alternatives to popular online services, how they are better, or how they give back control of your data. Also include hints and tips for less technical readers.

Useful Lists

founded 1 year ago
MODERATORS
 

So i have a vm hosted on my proxmox server with docker and nginx proxy manager, it can reverse proxy any container on the same network “bridge” without any problems..

However, i have other vms on proxmox “non docker” that i eant to reverse proxy to it but I couldn’t do it… I tried using (network_mode: host) and (network: external) But it doesn’t seem to work, whenever i inspect docker network it always says that npm is running on bridge network..

Tldr I need containerized npm to reverse proxy other “non docker” proxmox vms

you are viewing a single comment's thread
view the rest of the comments
[–] Drauku@alien.top 1 points 11 months ago (1 children)

I suggest creating a custom docker bridge network on which you put all your other docker containers that you want to give access to the local network. There are other reasons a custom bridge is preferred, but that's a different subject.

Here is the terminal command that will create a custom docker bridge network named reverse_proxy:

docker network create --opt "encrypted" --scope "local" --driver "bridge" --subnet "172.27.2.0/24" --gateway "172.27.2.254" --attachable "reverse_proxy"

Here's the NXPM docker-compose.yml I'm using that works for this purpose:

version: '3'

networks:
  reverse_proxy:
    external: true

services:
  app:
    image: 'jlesage/nginx-proxy-manager'
    container_name: 'nxpm'
    restart: unless-stopped
    networks:
      - reverse_proxy
    ports:
      - '443:443' # https
      - '80:80'   # http
      - '81:81'   # npxm webui
    volumes:
      - /opt/docker/appdata/nxpm/data:/data
      - /opt/docker/appdata/nxpm/certs:/etc/letsencrypt

Note the two networks: sections, one outside of and one inside the nxpm service stanza.

Once this container is up and running, you should be able to route to any network service on the local area network connected to your docker host by creating a host redirect in the nxpm webui that points to that services lan.ip:port.

[–] AhmedBarayez@alien.top 1 points 11 months ago (1 children)

modifed my yml file to match yours

version: '3.8'

services:

networks:

reverse_proxy:

external: true

app:

image: 'jc21/nginx-proxy-manager:latest'

restart: unless-stopped

networks:

- reverse_proxy

ports:

# These ports are in format :

- '80:80' # Public HTTP Port

- '443:443' # Public HTTPS Port

- '81:81' # Admin Web Port

# Add any other Stream port you want to expose

# - '21:21' # FTP

# Uncomment the next line if you uncomment anything in the section

# environment:

# Uncomment this if you want to change the location of

# the SQLite DB file within the container

# DB_SQLITE_FILE: "/data/database.sqlite"

# Uncomment this if IPv6 is not enabled on your host

# DISABLE_IPV6: 'true'

volumes:

- ./data:/data

- ./letsencrypt:/etc/letsencrypt

but when running docer compose up i get this error

validating /home/ubuntu/nginx-npm/docker-compose.yml: networks.app Additional property restart is not allowed

[–] AhmedBarayez@alien.top 1 points 11 months ago

Ok i fixed this error and npm is running now but still can't reverse proxy proxmox vm using npm