shrink docker image / esbuildify (#319)

multistage docker build + esbuild
This commit is contained in:
jordy25519
2024-12-17 12:12:43 +08:00
committed by GitHub
parent 83bc842e7d
commit 4227c6b546
4 changed files with 66 additions and 16 deletions

28
esbuild.config.js Normal file
View File

@@ -0,0 +1,28 @@
const esbuild = require('esbuild');
const glob = require('tiny-glob');
const commonConfig = {
bundle: true,
platform: 'node',
target: 'node20',
sourcemap: false,
// minify: true, makes messy debug/error output
treeShaking: true,
legalComments: 'none',
mainFields: ['module', 'main'],
metafile: true,
format: 'cjs',
external: [
'bigint-buffer',
'@triton-one/yellowstone-grpc'
]
};
(async () => {
let entryPoints = await glob("./src/*.ts", { filesOnly: true });
await esbuild.build({
...commonConfig,
entryPoints,
outdir: 'lib',
});
})().catch(() => process.exit(1));