dockerizer periphery

This commit is contained in:
mbecker20
2022-03-17 02:45:00 -07:00
parent 2c043ff80b
commit 99a22614c0
7 changed files with 50 additions and 14 deletions

View File

@@ -6,7 +6,7 @@
"license": "MIT",
"scripts": {
"start": "tsc && node build/main.js",
"build": "vite build && node transform.mjs && docker build -t mbecker2020/monitor ."
"build": "vite build && node transform.mjs && docker build -t mbecker2020/monitor-core ."
},
"devDependencies": {
"@monitor/types": "1.0.0",

View File

@@ -13,9 +13,8 @@
"frontend"
],
"scripts": {
"start-core": "cd core && yarn start",
"build-core": "cd core && yarn build",
"start-periphery": "cd periphery && yarn start",
"build-periphery": "cd periphery && yarn build",
"start-frontend": "cd frontend && yarn start",
"build-frontend": "cd frontend && yarn build",
"run-mongo": "docker run -d --name mongo -p 27017:27017 mongo:latest",

14
periphery/Dockerfile Normal file
View File

@@ -0,0 +1,14 @@
FROM node:alpine
RUN apk update && apk add docker git openrc --no-cache
RUN addgroup root docker && rc-update add docker boot
WORKDIR /monitor
COPY ./build/package.json ./
RUN npm i
COPY ./build ./build
CMD node build/main.js

View File

@@ -5,12 +5,14 @@
"author": "mbecker20",
"license": "MIT",
"scripts": {
"start": "tsc && node build/main.js"
"start": "tsc && node build/main.js",
"build": "vite build && node transform.mjs && docker build -t mbecker2020/monitor-periphery ."
},
"devDependencies": {
"@monitor/types": "1.0.0",
"@types/dockerode": "^3.3.3",
"typescript": "^4.6.2"
"typescript": "^4.6.2",
"vite": "^2.8.6"
},
"dependencies": {
"@monitor/util": "1.0.0",

10
periphery/transform.mjs Normal file
View File

@@ -0,0 +1,10 @@
import { readFileSync, writeFileSync } from "fs";
const raw = readFileSync("package.json");
const json = JSON.parse(raw);
delete json.scripts;
delete json.devDependencies;
delete json.dependencies["@monitor/util"];
writeFileSync("./build/package.json", JSON.stringify(json, undefined, 2));

View File

@@ -3,21 +3,23 @@
"display": "Node 12",
"compilerOptions": {
"lib": [
"es2019",
"es2020.promise",
"es2020.bigint",
"es2020.string"
"ESNext"
],
"module": "commonjs",
"target": "es2019",
"module": "ESNext",
"moduleResolution": "node",
"target": "ESNext",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"allowJs": true,
"noImplicitAny": false,
"rootDir": "src",
"rootDir": "/",
"outDir": "build",
"resolveJsonModule": true
}
"resolveJsonModule": true,
"noEmit": true
},
"include": [
"src"
]
}

9
periphery/vite.config.ts Normal file
View File

@@ -0,0 +1,9 @@
import { defineConfig } from "vite";
export default defineConfig({
build: {
outDir: "build",
target: "esnext",
ssr: "./src/main.ts",
},
});