33 lines
849 B
JavaScript
33 lines
849 B
JavaScript
import http from 'http'
|
|
|
|
const listenPort = Number(process.env.WIZARD_PORT || 8080)
|
|
const targetHost = process.env.WIZARD_HOST || 'wizard'
|
|
const targetPort = Number(process.env.WIZARD_PORT || 8080)
|
|
|
|
http
|
|
.createServer((req, res) => {
|
|
const proxyReq = http.request(
|
|
{
|
|
hostname: targetHost,
|
|
port: targetPort,
|
|
path: req.url,
|
|
method: req.method,
|
|
headers: req.headers,
|
|
},
|
|
(proxyRes) => {
|
|
res.writeHead(proxyRes.statusCode || 502, proxyRes.headers)
|
|
proxyRes.pipe(res)
|
|
}
|
|
)
|
|
|
|
proxyReq.on('error', (err) => {
|
|
res.statusCode = 502
|
|
res.end(`Bad gateway: ${err.message}`)
|
|
})
|
|
|
|
req.pipe(proxyReq)
|
|
})
|
|
.listen(listenPort, '127.0.0.1', () => {
|
|
console.log(`wizard proxy listening on 127.0.0.1:${listenPort} -> ${targetHost}:${targetPort}`)
|
|
})
|