diff --git a/Server/index.js b/Server/index.js index 11b5b2151..0e9811a43 100644 --- a/Server/index.js +++ b/Server/index.js @@ -28,6 +28,7 @@ import NetworkService from "./service/networkService.js"; import axios from "axios"; import ping from "ping"; import http from "http"; +import Docker from "dockerode"; // Email service and dependencies import EmailService from "./service/emailService.js"; @@ -45,7 +46,7 @@ import NotificationService from "./service/notificationService.js"; import db from "./db/mongo/MongoDB.js"; const SERVICE_NAME = "Server"; -const SHUTDOWN_TIMEOUT = 0; +const SHUTDOWN_TIMEOUT = 1000; let isShuttingDown = false; const __filename = fileURLToPath(import.meta.url); @@ -130,7 +131,7 @@ const startApp = async () => { nodemailer, logger ); - const networkService = new NetworkService(axios, ping, logger, http); + const networkService = new NetworkService(axios, ping, logger, http, Docker); const statusService = new StatusService(db, logger); const notificationService = new NotificationService(emailService, db, logger); const jobQueue = await JobQueue.createJobQueue( diff --git a/Server/service/networkService.js b/Server/service/networkService.js index b7d76e475..74ee8105c 100644 --- a/Server/service/networkService.js +++ b/Server/service/networkService.js @@ -8,7 +8,7 @@ import { errorMessages, successMessages } from "../utils/messages.js"; * @param {Object} http - The HTTP utility for network operations. */ class NetworkService { - constructor(axios, ping, logger, http) { + constructor(axios, ping, logger, http, Docker) { this.TYPE_PING = "ping"; this.TYPE_HTTP = "http"; this.TYPE_PAGESPEED = "pagespeed"; @@ -21,6 +21,7 @@ class NetworkService { this.ping = ping; this.logger = logger; this.http = http; + this.Docker = Docker; } /** @@ -164,7 +165,8 @@ class NetworkService { } async requestDocker(job) { - console.log(job); + var docker = new Docker({ socketPath: "/var/run/docker.sock" }); + return {}; }