Initial commit
This commit is contained in:
parent
1d430902f2
commit
0d2090ba9f
21
Dockerfile
Normal file
21
Dockerfile
Normal file
@ -0,0 +1,21 @@
|
||||
# Use the official Node.js 18 image as the base image
|
||||
FROM node:18
|
||||
|
||||
# Set the working directory inside the container
|
||||
WORKDIR /app
|
||||
|
||||
# Copy package.json and package-lock.json (if available)
|
||||
# (In this case, no dependencies are needed, so this step is optional)
|
||||
COPY package*.json ./
|
||||
|
||||
# Install dependencies (optional step; no dependencies are required for this example)
|
||||
# RUN npm install
|
||||
|
||||
# Copy the server code into the container
|
||||
COPY . .
|
||||
|
||||
# Expose the port the server will run on
|
||||
EXPOSE 3000
|
||||
|
||||
# Command to run the server
|
||||
CMD ["node", "src/app.js"]
|
13
docker-compose.yml
Normal file
13
docker-compose.yml
Normal file
@ -0,0 +1,13 @@
|
||||
version: "3"
|
||||
|
||||
networks:
|
||||
proxnet:
|
||||
external: true
|
||||
|
||||
services:
|
||||
websrv:
|
||||
image: v0idf1sh/request-inspector
|
||||
container_name: request-inspector
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxnet
|
15
package.json
Normal file
15
package.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "request-inspector",
|
||||
"version": "1.0.0",
|
||||
"description": "Super basic node web server that displays all details of an HTTP request",
|
||||
"main": "src/app.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://git.vfsh.dev/voidf1sh/request-inspector"
|
||||
},
|
||||
"author": "voidf1sh",
|
||||
"license": "ISC"
|
||||
}
|
31
src/app.js
Normal file
31
src/app.js
Normal file
@ -0,0 +1,31 @@
|
||||
// Import required modules
|
||||
const http = require('http');
|
||||
const url = require('url');
|
||||
|
||||
// Create the server
|
||||
const server = http.createServer((req, res) => {
|
||||
// Parse the request URL
|
||||
const parsedUrl = url.parse(req.url, true);
|
||||
|
||||
// Prepare the response content
|
||||
const responseContent = {
|
||||
method: req.method,
|
||||
url: req.url,
|
||||
headers: req.headers,
|
||||
query: parsedUrl.query,
|
||||
};
|
||||
|
||||
// Set the response headers
|
||||
res.writeHead(200, { 'Content-Type': 'application/json' });
|
||||
|
||||
// Send the response
|
||||
res.end(JSON.stringify(responseContent, null, 2));
|
||||
});
|
||||
|
||||
// Define the server port
|
||||
const PORT = 3000;
|
||||
|
||||
// Start the server
|
||||
server.listen(PORT, () => {
|
||||
console.log(`Server is running on http://localhost:${PORT}`);
|
||||
});
|
Loading…
Reference in New Issue
Block a user