You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Current »

Here are several things you can check to make sure you are ready for the summer school.

Attendee Checklist

To help, we've created a run through below and short Jupyter notebook you can download to demonstrate these steps.

Fermitools Example Run Through

Here's an example session on a Mac. I created a directory called fermi_summer_school  and a file in it called this_is_the_share_directory just so something shows up in a directory listing.  Note that its name does not matter, and you can create it wherever you like or use an existing directory.  This directory will be visible from the container. I then pulled the FermiBottle image from Docker and started it.

(base) user@host % mkdir fermi_summer_school
(base) user@host % cd fermi_summer_school
(base) user@host fermi_summer_school % touch this_is_the_share_directory
(base) user@host fermi_summer_school % ls
this_is_the_share_directory
(base) user@host fermi_summer_school % docker pull fssc/fermibottle
Pulling from fssc/fermibottle
Digest: sha256:f041b634d1b3a6d3a4e3276c8bac486de47a1839365c0a0826569da40c5a9b47
Status: Image is up to date for fssc/fermibottle
docker.io/fssc/fermibottle
(base) user@host fermi_summer_school % xhost + 127.0.0.1 && \
docker create -it --init \
-e HOST_USER_ID=`id -u $USER` \
-e DISPLAY=host.docker.internal:0 \
-v "`pwd`":/data \
-p 8888:8888 \
fssc/fermibottle
127.0.0.1 being added to access control list
be68136958ad303810707e78b08080c20490fcdc2ee4b061fb46f464b997e7a4
(base) user@host fermi_summer_school % docker ps -a
CONTAINER ID   IMAGE              COMMAND                  CREATED          STATUS    PORTS     NAMES
be68136958ad   fssc/fermibottle   "/opt/docker/bin/ent…"   19 seconds ago   Created             silly_pasteur
(base) user@host fermi_summer_school % docker start be68136958ad
be68136958ad
(base) user@host fermi_summer_school % docker attach be68136958ad

This puts me in the container. You should notice that the prompt is now the "fermi" user and the container ID. Note that you only have to run the xhost command once.  If you quit the container, you will have to run the start and attach commands to return to it.

I launched ds9 to make sure X-windows are working. Quit it (assuming it works) and change to the shared directory, which is under /data in the container.

(base) [fermi@be68136958ad ~]$ ds9
(base) [fermi@be68136958ad ~]$ cd /data
(base) [fermi@be68136958ad data]$ ls
this_is_the_share_directory

Back on the host system, download this file, Quick_Test.zip, and put it in the shared directory. Then, unzip it which will create a directory.

(base) user@host fermi_summer_school % unzip Quick_Test.zip 
Archive:  Quick_Test.zip
   creating: Quick_Test/
  inflating: Quick_Test/Quick_Test.ipynb  
  inflating: Quick_Test/SC00.fits    
  inflating: Quick_Test/3C279_1deg_gti.fits  
(base) user@host fermi_summer_school % ls
Quick_Test/                  Quick_Test.zip               this_is_the_share_directory

In the container, you should see the change:

(base) [fermi@be68136958ad data]$ ls
Quick_Test  Quick_Test.zip  this_is_the_share_directory

Now start the "fermi" environment and the Jupyter notebook server:

(base) [fermi@be68136958ad data]$ conda activate fermi
(fermi) [fermi@be68136958ad data]$ cd Quick_Test
(fermi) [fermi@be68136958ad Quick_Test]$ ls
3C279_1deg_gti.fits  3C279_1deg_lc.fits  Quick_Test.ipynb  SC00.fits

(fermi) [fermi@be68136958ad data]$ notebook
[I 19:02:00.683 NotebookApp] Loading IPython parallel extension
[I 19:02:00.685 NotebookApp] Serving notebooks from local directory: /data
[I 19:02:00.685 NotebookApp] Jupyter Notebook 6.3.0 is running at:
[I 19:02:00.685 NotebookApp] http://00.00.00.00:8888/?token=f1c9ca8c84b17e3ebbd6394eaab36aab1a9ee52d61092436
[I 19:02:00.685 NotebookApp]  or http://127.0.0.1:8888/?token=f1c9ca8c84b17e3ebbd6394eaab36aab1a9ee52d61092436
[I 19:02:00.685 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 19:02:00.689 NotebookApp] 
    
    To access the notebook, open this file in a browser:
        file:///home/fermi/.local/share/jupyter/runtime/nbserver-606-open.html
    Or copy and paste one of these URLs:
        http://00.00.00.00:8888/?token=f1c9ca8c84b17e3ebbd6394eaab36aab1a9ee52d61092436
     or http://127.0.0.1:8888/?token=f1c9ca8c84b17e3ebbd6394eaab36aab1a9ee52d61092436

You can paste one of the http URLs into the browser (I used the 00.00.00.00 one) on your host machine and should see something like:

Click on the Quick_test.ipynb file to open it. You can then run the notebook by select Cell->Run All from the menu bar.  It runs one of the Fermitools (gtbin) and then creates a lightcurve. You should then end up with a notebook that looks like this:

Congratulations, things seem to be working!





  • No labels