ashupednekar / ashupednekar/compose

Ingress → NGINX Conf Transformation

Open
#6 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

#### Description
We need support for transforming Kubernetes Ingress resources into an **NGINX configuration** when generating Docker Compose setups.
This will enable routing, host/path-based rules, and TLS termination to be represented in the generated NGINX service.

#### Motivation
Currently, the tool generates basic Compose services, but lacks ingress handling.
Many real-world deployments rely on ingress rules for routing, and without this, Compose-based environments require manual NGINX configuration.

#### Expected Behavior
- Parse Ingress resources from Helm/Kubernetes manifests.
- Generate an equivalent `nginx.conf` and mount it into an NGINX container within the Compose setup.
- Support:
- Host-based routing
- Path-based routing
- TLS (optional – can be mapped to self-signed certs for local dev)

#### Example
Ingress resource:
aaa
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: example-ingress
spec:
rules:
- host: example.local
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 80
aaa

Generated nginx.conf (mounted into container):
aaa
server {
listen 80;
server_name example.local;

location / {
proxy_pass http://web:80;
}
}
aaa

#### Open Questions
- Should we auto-generate TLS certs for `Ingress.tls` or leave it manual?
- Do we need support for multiple ingress controllers, or assume NGINX only?

#### Next Steps
- [ ] Parse ingress resources during transformation.
- [ ] Add NGINX container with mounted config.
- [ ] Support host/path routing.
- [ ] Add TLS support (optional).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the Helm/Kubernetes manifest transformation and Docker Compose generation entry points. Define how Ingress resources map to an NGINX service and mounted nginx.conf, including host/path routing and the unresolved TLS and controller-scope decisions; done means the listed routing behavior is generated and covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker-compose, go, kubernetes, nginx
Domain
devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.