Hey Andy, Happy to be useful in some way, I have a fair amount of experience here.
Since you already have a Dockerfile next to this one that is building the React app and serving it on NGINX: "/workspaces/arrow-ballista/dev/docker/ballista-scheduler-ui.dockerfile" You can just copy the built assets out of it: ARG VERSION FROM apache/arrow-ballista:$VERSION COPY --from=ballista-scheduler-ui:0.8.0 /usr/share/nginx/html /usr/share/nginx/html # TODO start nginx in background to serve the UI ENV RUST_LOG=info ENV RUST_BACKTRACE=full CMD ["/scheduler", "&&", "nginx", "-g", "daemon off;"] That run command is probably wrong, you'd want to use a shell script that does both things with ENTRYPOINT, not CMD but you get the point It seems to build anyways: [image: image.png] If you want to have it in a single step, you can rewrite the Dockerfile like this: ARG VERSION FROM node:18-alpine as ui-build WORKDIR /app ENV PATH /app/node_modules/.bin:$PATH COPY package.json ./ COPY yarn.lock ./ RUN yarn COPY . ./ RUN yarn build FROM apache/arrow-ballista:$VERSION COPY --from=ui-build /app/build /usr/share/nginx/html # TODO start nginx in background to serve the UI ENV RUST_LOG=info ENV RUST_BACKTRACE=full CMD ["/scheduler", "&&", "nginx", "-g", "daemon off;"] On Sat, Sep 17, 2022 at 4:07 PM Andy Grove <andygrov...@gmail.com> wrote: > The Ballista project had a scheduler UI contributed a while back [1], and I > can get this working locally but am running into errors when trying to > build this in a Docker image along with the Rust scheduler process. I have > zero experience with node/yarn, so am wondering if anyone could spare some > time to help point me in the right direction. > > I have a PR up with a comment where I am stuck. [2] > > Thanks, > > Andy. > > [1] > > https://github.com/apache/arrow-ballista/commit/372ba5fadf3c6c645b98185589996c849e42aac5 > [2] https://github.com/apache/arrow-ballista/pull/238 >