ORNL / DataFed

A Federated Scientific Data Management System
https://ornl.github.io/DataFed/
Other
18 stars 13 forks source link

Blake nedved rework docker building #916

Closed JoshuaSBrown closed 6 months ago

JoshuaSBrown commented 9 months ago

Description

This pull request includes changes that will simplify the docker build process and make it significantly faster and produce smaller images on average by better utilizing the docker cache, to do this the dockerfiles have be reorganized so that they all pull from one dependencies image and one runtime image so that way the dependencies only need to be built once.

Tasks

Work time

Expected time: 3 weeks

JoshuaSBrown commented 7 months ago

Something on the permissions of the web server are still off. Looks like the NVM posix permissions are not being handled correctly.

 => ERROR [ws 13/15] RUN . /datafed/scripts/dependency_versions.sh &&      . /datafed/.nvm/nvm.sh &&        npm --allow-root --unsafe-perm --prefix /opt/datafed/web install                                                                                                                                     0.2s
------
 > [ws 13/15] RUN . /datafed/scripts/dependency_versions.sh &&                                          . /datafed/.nvm/nvm.sh &&                                                               npm --allow-root --unsafe-perm --prefix /opt/datafed/web install:
0.170 /bin/sh: 1: .: Can't open /datafed/.nvm/nvm.sh
------
Dockerfile:91
--------------------
  90 |     COPY --from=ws-build --chown=datafed:root ${BUILD_DIR}/web/package.json ${DATAFED_INSTALL_PATH}/web/package.json
  91 | >>> RUN . ${DATAFED_DIR}/scripts/dependency_versions.sh &&                                       \
  92 | >>>      . ${DATAFED_DIR}/.nvm/nvm.sh &&                                                 \
  93 | >>>      npm --allow-root --unsafe-perm --prefix ${DATAFED_INSTALL_PATH}/web install
  94 |
--------------------