# jupyter For Atmospheric Scientists **Repository Path**: bugatti100Peagle/jupyter-For-Atmospheric-Scientists ## Basic Information - **Project Name**: jupyter For Atmospheric Scientists - **Description**: 预装有 Python3,C,Fortan,Grads,Julia,R内核,Metpy,Siphon,atmos,basemap,ncl_to_Python,Cartopy,ecmwf-api,netCDF4等常用包的 Jupyterlab 镜像。Docker images of Jupyterlab with Python3, C, Fortan, Grads, Julia, R and Metpy, Siphon, atmos, basemap, ncl_to_Python, Cartopy, geoplot, ecmwf-api. - **Primary Language**: Docker - **License**: MPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 10 - **Forks**: 3 - **Created**: 2020-02-18 - **Last Updated**: 2024-05-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # jupyter For Atmospheric Scientists ## 介绍 Jupyterlab 镜像预装 Python3,C,Fortan,Grads,Julia,R内核,Metpy,Siphon,atmos,basemap,ncl_to_Python,Cartopy,ecmwf-api,netcdf等常用包。 Docker images of Jupyterlab with Python3, C, Fortan, Grads, Julia, R and Metpy, Siphon, atmos, basemap, ncl_to_Python, Cartopy, ecmwf-api. ## 使用截图 | ![](https://newblogimg.oss-cn-beijing.aliyuncs.com/2020/02/18/44d5d10d73152.png) | ![](https://newblogimg.oss-cn-beijing.aliyuncs.com/2020/02/18/362d47fcfb311.png) | | ------------ | ------------- | | ![](https://newblogimg.oss-cn-beijing.aliyuncs.com/2020/02/18/36c7dd118359b.png) | ![](https://newblogimg.oss-cn-beijing.aliyuncs.com/2020/02/18/ec9bbcf04edf9.png)| 无需复杂设置与安装,开包即用。(PS:尤其是Basemap,简直是气象人的噩梦) ## 安装教程 服务器要求,至少1 vCPU 2 GiB,已配置网络环境,安全组开放`8000`端口。(也可以是其他端口,注意修改`run`命令即可) 推荐用[宝塔面板](https://www.bt.cn/)安装。 ### 1. 下载并安装Docker ce 卸载旧版本Docker ```bash sudo apt-get remove docker docker-engine docker.io ``` 安装包以允许通过HTTPS使用存储库 ```bash sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common ``` 添加Docker的官方GPG密钥 ```bash curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - ``` 确认指纹 ```bash sudo apt-key fingerprint 0EBFCD88 ``` 设置稳定存储库,默认最新版 ```bash sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" ``` 再次更新apt包索引 ```bash sudo apt-get update ``` 安装最新版本的Docker CE ```bash sudo apt-get install docker-ce ``` 查看Docker CE 版本 ```bash docker -v ``` ### 2. 拉取阿里云镜像 已打包七种镜像可供选择,如下: | 镜像名| 大小 | Python3 C Grads Julia R |Metpy Siphon atmos | basemap | ncl_to_Python | Cartopy | ecmwf-api | netcdf | Fortan | | ------------ | ------------- | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | | jupytercgmsabefcn:v1 | 3.001 GB | √ | √ | √ | | √ | √ | √ | √ | | [jupytercgrads_metpy_siphon_atmos_nal_ecmwf_fortran:v1](https://gitee.com/bugatti100Peagle/jupyter-For-Atmospheric-Scientists/blob/master/jupytercgrads_metpy_siphon_atmos_ncl_ecmwf_fortran.md) | 2.600 GB | √ | √ | | √ | | √ | | √ | | jupytercgrads:1 | 1.871 GB | √ | | | | | | | | | jupytercgrads_metpy_siphon_atmos:v1 | 1.978 GB | √ | √ | | | | | | | | jupytercgrads_metpy_siphon_atmos_basemap:v1 | 2.794 GB | √ | √ | √ | | | | | | | jupytercgrads_metpy_siphon_atmos_basemap_ecmwf_fortran:v1 | 2.794 GB | √ | √ | √ | | | √ | | √ | | [jupytercgrads_metpy_siphon_atmos_basemap_ecmwf_fortran_cartopy:v1](https://gitee.com/bugatti100Peagle/jupyter-For-Atmospheric-Scientists/blob/master/jupytercgrads_metpy_siphon_atmos_basemap_ecmwf_fortran_cartopy.md) | 2.959 GB | √ | √ | √ | | √ | √ | | √ | 本教程以装有Basemap和netCDF4的jupytercgmsabefcn为例,拉取链接为`docker pull registry.cn-shanghai.aliyuncs.com/bugatii100peagle/镜像名:版本` ```bash docker pull registry.cn-shanghai.aliyuncs.com/bugatii100peagle/jupytercgmsabefcn:v1 ``` ### 3. 运行镜像 本地新建文件夹`jupyterlab`,`jupyterlab/workspace` ```bash docker run --name jupytercgmsabefcn -d -p 8000:8888 -v `pwd`/jupyterlab:/workspace -w /workspace -e GRANT_SUDO=yes --user root registry.cn-shanghai.aliyuncs.com/bugatii100peagle/jupytercgmsabefcn:v1 jupyter-lab --no-browser --port=8888 --ip=0.0.0.0 --allow-root ``` ## 使用说明 浏览器打开`http://IP:8000`,密码是空密码,直接回车即可。 ![](https://newblogimg.oss-cn-beijing.aliyuncs.com/2020/02/20/442292d9a302a.png) ### 改密方法 进入`/home/jovyan/.jupyter`目录,打开ipython ```bash cd /home/jovyan/.jupyter ipython ``` 在ipython中输入 ```python from notebook.auth import passwd passwd() ``` 在窗口中输入密码,不会显示,输入两次一样的即可。(输错了也没关系重来就行)系统会给出一串数字。比如:(下面这段数字是空密码的) ```bash 'sha1:840438352003:10c0d77ee275c741e22e6929cb7822e61ab5c256' ``` 打开`/home/jovyan/.jupyter`目录下的`jupyter_notebook_config.py`文件。 ```bash nano jupyter_notebook_config.py ``` 修改如下字段 ```bash c.NotebookApp.ip = '*' c.NotebookApp.password = 'sha1:XXXX你刚刚生成的那段数字' c.NotebookApp.allow_remote_access = True ``` 保存退出,退出镜像,重启镜像即可。 ```bash docker restart jupytercgmsabefcn ``` ## TODO 接下来要做 - [ ] 1. 国际化本项目文档。 - [ ] 2. 收集更多常用工具集成。 - [ ] 3. 试图解决NCL与Basemap的冲突,设置虚拟环境,集成到一个镜像。 - [ ] 4. 修复低版本Grads无法打开`.nc`文件的问题。 - [ ] 5. 尝试融入[气象家园网站的Grads整合版](https://bbs.06climate.com/forum.php?mod=viewthread&tid=8254&extra=page%3D3)或部分功能(南海脚本,cbarn) ## 参与项目 欢迎下载镜像使用,如果你觉得不错就给个星吧。 如果你有什么需求建议,可以在`issue`中以`需求:xxx`的形式给出。 如果你安装遇到问题,可以在`issue`中以`问题:xxx`的形式给出,并标明宿主机环境,报错信息等。 从裸奔的Jupyter镜像安装的详细方法,可参考我的博文[气象人的Jupyterlab](https://blog.bugatii100peagle.cn/2020/02/17/%E6%B0%94%E8%B1%A1%E4%BA%BA%E7%9A%84JupyterLab/).