Skip to content

mieweb/opensource-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

opensource-mieweb

Configuration storage for the opensource.mieweb.com Proxmox project.

This repository contains configuration files and scripts for managing a Proxmox-based container hosting environment, including automated DNS, NGINX reverse proxy, and dynamic port mapping.

│   README.md
│   
├───intern-dnsmasq
│       dnsmasq.conf
│       
├───intern-nginx
│       nginx.conf
│       port_map.js
│       reverse_proxy.conf
│
└───intern-phxdc-pve1
        register-container.sh
        register_proxy_hook.sh

Repository Structure

How It Works

  • DNS: All *.opensource.mieweb.com requests are routed to the NGINX proxy via Dnsmasq.
  • Reverse Proxy: NGINX uses a JavaScript module to dynamically resolve the backend IP and port for each subdomain, based on /etc/nginx/port_map.json.
  • Container Registration: When a new container starts, Proxmox runs a hook script that:
    • Waits for the container to get a DHCP lease.
    • Assigns available HTTP and SSH ports.
    • Updates the NGINX port map and reloads NGINX.
    • Sets up port forwarding for SSH access.

Usage

  1. Clone this repository to your Proxmox host or configuration management system.
  2. Deploy the configuration files to their respective locations on your infrastructure.
  3. Ensure dependencies:
    • Proxmox VE with container support.
    • NGINX with the ngx_http_js_module.
    • Dnsmasq.
    • jq for JSON manipulation.
  4. Register new containers using the provided hook scripts for automatic proxy and DNS integration.

*Current SME: Carter Myers and other contributors to opensource.mieweb.com *

About

The opensource server at MIE

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •