Added pm2 to dockerfile. NO_AUTH env.

This commit is contained in:
lllllllillllllillll 2024-06-19 18:28:48 -07:00
parent 5e13288fc1
commit 6c15c28c2e
4 changed files with 9 additions and 7 deletions

View File

@ -3,6 +3,7 @@ ENV NODE_ENV=production
WORKDIR /app
COPY package.json /app
RUN npm install
RUN npm install pm2 -g
COPY . /app
EXPOSE 8000
CMD ["node", "server.js"]
CMD ["pm2-runtime", "server.js"]

View File

@ -13,13 +13,14 @@ let [ports_data, volumes_data, env_data, label_data] = [[], [], [], []];
// The page
export const Dashboard = (req, res) => {
let name = req.session.user;
let name = req.session.user || 'Local';
let avatar = name.charAt(0).toUpperCase();
let role = req.session.role;
alert = req.session.alert;
res.render("dashboard", {
name: name,
avatar: name.charAt(0).toUpperCase(),
avatar: avatar,
role: role,
alert: alert,
});

View File

@ -8,7 +8,7 @@ export const Networks = async function(req, res) {
let containers = await docker.listContainers({ all: true });
// Loop through the containers to find out which networks are being used
for (let i = 0; i < containers.length; i++) {
console.log(Object.keys(containers[i].NetworkSettings.Networks)[0]);
// console.log(Object.keys(containers[i].NetworkSettings.Networks)[0]);
try { network_name += containers[i].HostConfig.NetworkMode; } catch {}
try { container_networks.push(containers[i].NetworkSettings.Networks[network_name].NetworkID); } catch {}
}

View File

@ -23,19 +23,19 @@ import { Uninstall } from "../utils/uninstall.js"
// Permission Middleware
const adminOnly = async (req, res, next) => {
if (req.session.role == 'admin') { next(); }
else if (no_auth && req.connection.remoteAddress == '::ffff:127.0.0.1') { next(); }
else if (no_auth && req.hostname == 'localhost') { next(); }
else { res.redirect('/dashboard'); }
}
const sessionCheck = async (req, res, next) => {
if (req.session.user) { next(); }
else if (no_auth && req.connection.remoteAddress == '::ffff:127.0.0.1') { next(); }
else if (no_auth && req.hostname == 'localhost') { next(); }
else { res.redirect('/login'); }
}
const permissionCheck = async (req, res, next) => {
if (req.session.role == 'admin') { next(); return; }
else if (no_auth && req.connection.remoteAddress == '::ffff:127.0.0.1') { next(); }
else if (no_auth && req.hostname == 'localhost') { next(); }
let user = req.session.user;
let action = req.path.split("/")[2];
let trigger = req.header('hx-trigger-name');