mirror of
https://github.com/hyperdxio/hyperdx
synced 2026-04-21 13:37:15 +00:00
perf: merge api + app packages to dedupe node_modules (#901)
aio: 3GB -> 2.2GB app: 2.05GB -> 1.27GB Ref: HDX-1803
This commit is contained in:
parent
afe4c2da9c
commit
ab3b5cb628
4 changed files with 21 additions and 20 deletions
7
.changeset/gold-owls-hug.md
Normal file
7
.changeset/gold-owls-hug.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
---
|
||||
"@hyperdx/common-utils": patch
|
||||
"@hyperdx/api": patch
|
||||
"@hyperdx/app": patch
|
||||
---
|
||||
|
||||
perf: merge api + app packages to dedupe node_modules
|
||||
|
|
@ -66,21 +66,16 @@ RUN npm install -g concurrently@9.1.0
|
|||
|
||||
USER node
|
||||
|
||||
# Set up API
|
||||
WORKDIR /app/api
|
||||
# Set up API and App
|
||||
WORKDIR /app
|
||||
COPY --chown=node:node --from=builder /app/node_modules ./node_modules
|
||||
COPY --chown=node:node --from=builder /app/packages/api/build ./packages/api/build
|
||||
COPY --chown=node:node --from=builder /app/packages/common-utils/dist ./packages/common-utils/dist
|
||||
COPY --chown=node:node --from=node_base /app/packages/common-utils/node_modules ./packages/common-utils/node_modules
|
||||
|
||||
# Set up App
|
||||
WORKDIR /app/app
|
||||
COPY --chown=node:node --from=builder /app/node_modules ./node_modules
|
||||
COPY --chown=node:node --from=builder /app/packages/app/public ./public
|
||||
COPY --chown=node:node --from=builder /app/packages/app/.next ./.next
|
||||
# COPY --chown=node:node --from=builder /app/packages/app/node_modules ./packages/app/node_modules
|
||||
COPY --from=builder /app/packages/app/next.config.js ./next.config.js
|
||||
COPY --from=builder /app/packages/app/package.json ./package.json
|
||||
COPY --chown=node:node --from=builder /app/packages/app/public ./packages/app/public
|
||||
COPY --chown=node:node --from=builder /app/packages/app/.next ./packages/app/.next
|
||||
COPY --from=builder /app/packages/app/next.config.js ./packages/app/next.config.js
|
||||
COPY --from=builder /app/packages/app/package.json ./packages/app/package.json
|
||||
|
||||
# Set up start script
|
||||
COPY --chown=node:node --from=hyperdx ./entry.prod.sh /etc/local/entry.sh
|
||||
|
|
@ -123,11 +118,10 @@ RUN echo 'http://dl-cdn.alpinelinux.org/alpine/v3.9/main' >> /etc/apk/repositori
|
|||
ENV NODE_ENV production
|
||||
|
||||
# Set up App (copy from prod stage)
|
||||
COPY --from=prod /app/api /app/api
|
||||
COPY --from=prod /app/app /app/app
|
||||
COPY --from=prod /app /app
|
||||
COPY --from=hyperdx ./entry.local.base.sh /etc/local/entry.base.sh
|
||||
|
||||
WORKDIR /app/app
|
||||
WORKDIR /app
|
||||
|
||||
# Add hosts entry in entrypoint script instead of here
|
||||
|
||||
|
|
|
|||
|
|
@ -61,9 +61,9 @@ opampsupervisor --config /etc/otel/supervisor.yaml > /var/log/otel-collector.log
|
|||
npx concurrently \
|
||||
"--kill-others" \
|
||||
"--names=API,APP,ALERT-TASK" \
|
||||
"PORT=${HYPERDX_API_PORT:-8000} HYPERDX_APP_PORT=${HYPERDX_APP_PORT:-8080} node -r /app/api/node_modules/@hyperdx/node-opentelemetry/build/src/tracing /app/api/packages/api/build/index.js" \
|
||||
"HYPERDX_API_PORT=${HYPERDX_API_PORT:-8000} /app/app/node_modules/.bin/next start -p ${HYPERDX_APP_PORT:-8080}" \
|
||||
"node -r /app/api/node_modules/@hyperdx/node-opentelemetry/build/src/tracing /app/api/packages/api/build/tasks/index.js check-alerts" \
|
||||
"PORT=${HYPERDX_API_PORT:-8000} HYPERDX_APP_PORT=${HYPERDX_APP_PORT:-8080} node -r ./node_modules/@hyperdx/node-opentelemetry/build/src/tracing ./packages/api/build/index.js" \
|
||||
"cd ./packages/app && HYPERDX_API_PORT=${HYPERDX_API_PORT:-8000} ../../node_modules/.bin/next start -p ${HYPERDX_APP_PORT:-8080}" \
|
||||
"node -r ./node_modules/@hyperdx/node-opentelemetry/build/src/tracing ./packages/api/build/tasks/index.js check-alerts" \
|
||||
> /var/log/app.log 2>&1 &
|
||||
|
||||
echo ""
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ echo ""
|
|||
npx concurrently \
|
||||
"--kill-others" \
|
||||
"--names=API,APP,ALERT-TASK" \
|
||||
"PORT=${HYPERDX_API_PORT:-8000} HYPERDX_APP_PORT=${HYPERDX_APP_PORT:-8080} node -r /app/api/node_modules/@hyperdx/node-opentelemetry/build/src/tracing /app/api/packages/api/build/index.js" \
|
||||
"HYPERDX_API_PORT=${HYPERDX_API_PORT:-8000} /app/app/node_modules/.bin/next start -p ${HYPERDX_APP_PORT:-8080}" \
|
||||
"node -r /app/api/node_modules/@hyperdx/node-opentelemetry/build/src/tracing /app/api/packages/api/build/tasks/index.js check-alerts"
|
||||
"PORT=${HYPERDX_API_PORT:-8000} HYPERDX_APP_PORT=${HYPERDX_APP_PORT:-8080} node -r ./node_modules/@hyperdx/node-opentelemetry/build/src/tracing ./packages/api/build/index.js" \
|
||||
"cd ./packages/app && HYPERDX_API_PORT=${HYPERDX_API_PORT:-8000} ../../node_modules/.bin/next start -p ${HYPERDX_APP_PORT:-8080}" \
|
||||
"node -r ./node_modules/@hyperdx/node-opentelemetry/build/src/tracing ./packages/api/build/tasks/index.js check-alerts"
|
||||
|
|
|
|||
Loading…
Reference in a new issue