Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update base image to 22.04 #498

Merged
merged 67 commits into from
Sep 27, 2023
Merged

Update base image to 22.04 #498

merged 67 commits into from
Sep 27, 2023

Conversation

bryanpaget
Copy link
Contributor

@bryanpaget bryanpaget commented Aug 9, 2023

This is the commit to properly close: StatCan/aaw#1784 with pull request: #492 (already reviewed up to this point by @vexingly.

closes StatCan/aaw#1784

Testing and Resolving Issues

  • The error about light-locker not being installed was false. I still had to uninstall light-locker.
  • PSPP from the Ubuntu repository seems to work (I can launch it).
  • As a replacement for zlibc, I've installed zlib1g and zlib1g-dev.
  • I've replaced gvfs-bin with gvfs.
  • I updated RStudio Desktop from 1.3.1093 to 2023.06.1-524.
  • I removed the line to remove /usr/share/applications/exo-mail-reader.desktop since this .desktop file is no longer included in Ubuntu 22.04.
  • "xauth: file /home/jovyan/.Xauthority does not exist" (it does actually)
  • I was concerned about compatibility between ml-metadata and Python 3.10 but I was able to install and import the module on my VM which uses Python 3.10.
  • NoVNC works fine, the websockify work-around is no longer necessary.

Unresolved

  • "cp: cannot stat '/opt/install/desktop-files/.config/xfce4/xfce4-panel.xml': No such file or directory"
  • "_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created."

TODO

For more details, see: StatCan/aaw#1784.

Bryan Paget and others added 10 commits July 27, 2023 16:36
The light-locker removal command was failing, as light-locker was not installed... so I removed the removal command but when I launch the container on Kubeflow... the screen is locked.
the screen is still locking. :-/
the screen is still locking. :-/
Test PSPP from Ubuntu Repo to make sure French UI is shown. Remove installer script and update Dockerfile.
@bryanpaget bryanpaget added the auto-deploy Trigger manual CI steps for this PR label Aug 9, 2023
@bryanpaget bryanpaget marked this pull request as ready for review August 9, 2023 17:42
@bryanpaget
Copy link
Contributor Author

The updated 22.04 images build and run locally but I'm having difficulties with the Github Actions runner.

update actions/setup-python@v2 to actions/setup-python@v4
* Update build_push.yaml: deprecate set-output

update workflow to use $GITHUB_OUTPUT instead of set-output.

See: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

* Update build_push.yaml: update syntax

* Update build_push.yaml: update syntax for interpolation

* Update build_push.yaml: change notebook name variable name

* update remaining set-output commands

* Update Makefile: reset set-output commands for Makefile

Github Actions was complaining about set-output in the Makefile but I think we have to leave these lines alone since they are used by Make and not by Github Actions.
@bryanpaget bryanpaget linked an issue Aug 22, 2023 that may be closed by this pull request
2 tasks
@bryanpaget
Copy link
Contributor Author

RStudio does not launch. image

@bryanpaget
Copy link
Contributor Author

I may have installed incompatible versions of rstudio and rstudio-server.
image

bryanpaget and others added 3 commits August 22, 2023 16:19
The previously set location no longer exists.
I've updated rstudio-server to a (hopefully) compatible version.
@bryanpaget
Copy link
Contributor Author

RStudio does not launch. image

Updating the rstudio.desktop file to point to /usr/bin/rstudio fixes this issue.

@bryanpaget
Copy link
Contributor Author

I may have installed incompatible versions of rstudio and rstudio-server. image

I found a slightly newer version of rstudio-server which matches rstudio's version.

@bryanpaget
Copy link
Contributor Author

I've fixed the above two issues, but there is still one issue:

A "null" error upon opening rstudio-desktop:
image

@bryanpaget
Copy link
Contributor Author

R seems to function correctly and it's even running R 4.3.1! But I can't install any packages:

image

@bryanpaget
Copy link
Contributor Author

bryanpaget commented Sep 19, 2023

Testing

JupyterLab CPU

JupyterLab CPU has an issue with some jupyter plugins, maybe I need to run jupyter lab build somewhere?

image

This message also comes up.

image

The above errors don't seem to cause any problems with using the image.

RStudio

RStudio works but still struggles with tidymodels.

image

Remote Desktop

Remote Desktop works as it should as far as I can tell.

image

SAS

Everything seems to work.

bryanpaget and others added 8 commits September 19, 2023 16:19
Fix issue with JupyterLab extensions
Tidymodels is a troublesome package, will leave to the user to install, if needed.
I was getting errors saying xxx extension needs to be included in build.
I was getting errors saying xxx extension needs to be included in build.
I was getting errors saying xxx extension needs to be included in build.
I reworked the package install script to use fewer RUN blocks. I also discovered jupyter_contrib_nbextensions prefers pip over mamba. Local testing suggests I've stopped the jupyterlab build errors.
I added pillow and pyyaml to the exclude list since they are not imported by name (e.g. import pil, import yaml).
@bryanpaget
Copy link
Contributor Author

Testing

JupyterLab CPU

JupyterLab CPU has an issue with some jupyter plugins, maybe I need to run jupyter lab build somewhere?

image

This message also comes up.

image

The above errors don't seem to cause any problems with using the image.

RStudio

RStudio works but still struggles with tidymodels.

image

Remote Desktop

Remote Desktop works as it should as far as I can tell.

image

SAS

Everything seems to work.

The issues with JupyterLab have been resolved by cleaning up the JupyterLab extension installation code and calling jupyter lab build in the appropriate place.

bryanpaget and others added 9 commits September 21, 2023 10:31
* update(pytorch): remove virtual env

* update(pytorch): remove virtual env

* update(cpu, pytorch): mamba install pytorch to base

* update(pytorch): adjust torch installation

* update(pytorch): add ipykernel and conda env

* update(pytorch): remove CUDA

The PyTorch install command includes CUDA drivers, so I'll try installing those instead of our custom install script.

* update(pytorch): add ipykernel

* update(pytorch): add gputil

gputil has nvidia-smi

* update(tensorflow): add cuda to mamba command

I also tweaked the pytorch image to use mamba for the clean command

* update(tensorflow): add cuda to mamba command

I also tweaked the pytorch image to use mamba for the clean command

* update(tensorflow): remove tensorflow-gpu

tensorflow works for both gpu and cpu

* update(gpu-notebooks): remove conda env

tensorflow tests are failing, I think they expect tensorflow to be installed in the base env, which is what I prefer, so I'll move pytorch into the base env as well.

* update(cpu, pytorch, tensorflow): consistency

* update(test_tensorflow): use tensorflow env

* update(test_packages): add gputil to exclude list

* update(test_packages): add cudnn, cudatoolkit to exclude list

* update(pytorch, tensorflow): ipykernel install

* revert(cpu): fix cpu conda env

* update(tests): gpu available

* update(makefile): restore tensorflow build

* update(tests): remove GPU test

Github Actions won't have a GPU

* update(jupyterlab): jupyter-dash caused build fail

so I tried removing the version pinning, it wasn't breaking before so I'm not sure what changed.

* update(PR): based on comments

* update(rstudio): remove pin on tidymodels

since it breaks on the newer versions of R but we don't have a consistent version of R across images so it might be helpful to unpin tidymodels so we can let the system resolve a compatible version.

* update(get-nvidia-stuff): 1804 to 2204

* revert(2_tensorflow): prev working configuration

* update(0_Rocker): remove whitespace delta

* update(2_tensorflow): new line

* Update test_tensorflow.py: revert test

We are not yet using a Tensorflow conda env.

---------

Co-authored-by: Bryan Paget <bryan.paget@statcan.gc.ca>
* feat: install openmpp as jupyterlab service

* fix: generate dockerfiles

* chore: trigger auto-deploy

* fix: copy oms startup script

* fix: copy script in correct docker bit

* fix: make script executable

* fix: update openm version, fix config

* fix: sync issue

* fix: prepare openmpp config for prod deployment

* fix: move config to start-oms script
* feat: install openmpp as jupyterlab service

* fix: generate dockerfiles

* chore: trigger auto-deploy

* fix: copy oms startup script

* fix: copy script in correct docker bit

* fix: make script executable

* fix: update openm version, fix config

* fix: sync issue

* fix: prepare openmpp config for prod deployment

* fix: move config to start-oms script

Co-authored-by: Pat Ledgerwood <32804494+vexingly@users.noreply.github.com>
* feat: install openmpp as jupyterlab service

* fix: generate dockerfiles

* chore: trigger auto-deploy

* fix: copy oms startup script

* fix: copy script in correct docker bit

* fix: make script executable

* fix: update openm version, fix config

* fix: sync issue

* fix: prepare openmpp config for prod deployment

* fix: move config to start-oms script

Co-authored-by: Pat Ledgerwood <32804494+vexingly@users.noreply.github.com>
npm build ompp-ui was failing, adding --openssl-legacy-provider  to the build command resolved the issue.
npm build ompp-ui was failing, adding --openssl-legacy-provider to the build command resolved the issue locally but breaks on Github Actions, will try ARG NODE_OPTIONS=--openssl-legacy-provider.
Copy link

@chuckbelisle chuckbelisle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@chuckbelisle chuckbelisle merged commit e6f93a7 into master Sep 27, 2023
7 checks passed
@bryanpaget bryanpaget deleted the update-base-image-to-22.04 branch January 16, 2024 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-deploy Trigger manual CI steps for this PR
Projects
None yet
4 participants