Skip to content

Drop npm (and possibly node) as runtime dependency of kubeflow/dashboard #211

@christian-heusel

Description

@christian-heusel

Checks

Motivation

Currently the centraldashboard is being served via npm start as part of the Dockerfile:

# Step 2: Packages assets for serving
FROM node:16.20.2-alpine AS serve
RUN apk add --no-cache tini
USER node
ENV NODE_ENV=production
WORKDIR /usr/src/app
COPY --from=build --chown=node:node /centraldashboard .
EXPOSE 8082
ENTRYPOINT ["/sbin/tini", "--" , "npm", "start"]

Optimally this dependency could be eliminated in the final part of the image in order to have less attack surface, especially given how old some parts of the components are.

Implementation

The Dockerfile for kubeflow/notebooks (v2) could be a good inspiration for the implementation:

https://github.com/kubeflow/notebooks/blob/notebooks-v2/workspaces/frontend/Dockerfile

Are you willing & able to help?

  • I am able to submit a PR!
  • I can help test the feature!

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions