氣象模擬WRF容器化操作實踐

      網友投稿 1028 2022-05-29

      1????? WRF介紹

      WRF全稱Weather Research and Forecasting Model, 是一個天氣研究與預報模型,可以用來進行精細尺度的天氣模擬與預報。參考:https://xg1990.com/blog/archives/190

      但是這個軟件的安裝比較復雜,要包含WPS和WRF兩大模塊,其中WPS又包含geogrid,ungrib,metgrid三小步驟,并且還有一大堆的依賴包,賊麻煩。所以使用Docker輕量級容器來確保軟件使用環境的一致性,是個非常不做的方式。一旦做好鏡像,隨處可以運行wrf,這一點可以從WRF官方GitHub網站上也可以看出來,他們自己就提供了容器化操作的詳細指導。https://github.com/NCAR/WRF_DOCKER/blob/master/README_tutorial.md

      2????? 安裝Docker軟件

      要跑docker容器,得先安裝docker軟件。我這里使用Ubuntu 18.04為例(其他的網上隨便一搜一大堆):

      apt install docker.io

      然后可以敲:

      docker ps

      確定docker安裝好了

      3????? 安裝&啟動WRF容器

      整體還是參考wrf倉庫指導:

      https://github.com/NCAR/WRF_DOCKER/blob/master/README_tutorial.md

      (這個里面的Dockerfile編譯會失敗,有issue跟蹤)

      https://github.com/davegill/wrf-coop

      3.1????? 下載包含依賴包的基礎鏡像

      本應該按照它的第一部分Dockerfile-first_part構建基礎鏡像。

      docker pull davegill/wrf-coop:eighthtry

      這樣咱們就有了這個名叫:davegill/wrf-coop,版本是:eighthtry 的鏡像了。

      可以通過:

      docker images

      命令查看

      3.2????? 打包wrf鏡像

      然后咱們用這個基礎鏡像,打包一個包含wrf的最終目標鏡像。

      根據:https://github.com/davegill/wrf-coop 的描述

      基礎鏡像,就是Dockerfile-first_part那個,這個咱們偷懶,已經直接下載了現成的。所以現在咱們開始搞Dockerfile-second_part。

      下載那個Dockerfile-second_part文件,運行以下命令:

      cp Dockerfile-second_part Dockerfile

      docker build -t wrftest .

      這時就會打包好一個 wrftest的目標鏡像。

      可以通過

      docker images

      命令查看。

      3.3????? 編譯wrf

      啟動一個剛才打包好的wrf鏡像,并進入到容器內部。

      docker run -it --name test_001 wrftest

      這樣就進入到一個容器里面了。

      執行編譯命令:

      ./script.csh BUILD CLEAN 34 1 em_real -d J=-j@3

      成功后,我們就可以開始執行wrf的功能了~

      3.4????? 執行WRF測試用例

      在上一步的編譯成功后,咱們跑一跑它自帶的測試用例:

      ./script.csh RUN em_real 34 em_real 01 NP=3 ; set OK = $status ; echo $OK for test 01

      運行沒問題。

      實際執行的應該是:

      即:

      mpirun -np 3 -oversubscribe real.exe

      類似這種命令,具體含義,相信你應該比我熟了。(我們搞容器的,不怎么關系容器里面跑的軟件長什么樣。跟搞操作系統的,應該對所有app一視同仁一個道理)

      詳細內容,可以看一下:./script.csh 這個腳本,里面包裝了一些腳本參數。

      3.5????? 掛載外部存儲卷,到WRF容器內

      根據Docker容器的功能,用戶可以把外部的共享存儲,掛載到容器里面去(跟nfs掛載

      類似)。如果能借助Kubernetes就更厲害了,可以掛載更多的共享存儲類型。

      氣象模擬WRF容器化操作實踐

      可以參考這個https://github.com/NCAR/WRF_DOCKER/blob/master/README_tutorial.md#example-2

      使用docker的 -v 參數可以把主機的目錄,掛載到容器里面去。那么WRF的輸入數據,輸出結果啊,都可以直接讀寫到這個掛載的共享目錄里面。

      Docker 容器

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:技術分享 | 常用測試策略與測試手段
      下一篇:你不知道的JSON的高效率用法
      相關文章
      亚洲av乱码一区二区三区| 亚洲色av性色在线观无码| 亚洲精品国产精品国自产网站| 亚洲国产第一页www| 国产亚洲婷婷香蕉久久精品| 亚洲综合国产一区二区三区| 国产亚洲精品影视在线产品 | 亚洲免费日韩无码系列| 精品亚洲av无码一区二区柚蜜| 亚洲一区二区三区丝袜| 2017亚洲男人天堂一| 中文字幕在线日亚洲9| 亚洲熟妇无码AV| 亚洲av日韩专区在线观看| 亚洲AV无码国产精品永久一区| 亚洲国产成人综合精品| 国产成人精品亚洲| 亚洲精品成人久久久| 国产亚洲精品影视在线产品| 亚洲精品午夜无码专区| 亚洲av无码国产精品色午夜字幕| 亚洲av成人无码久久精品| 亚洲午夜未满十八勿入| 亚洲手机中文字幕| 国产日本亚洲一区二区三区| 亚洲欧美日韩自偷自拍| 亚洲 综合 国产 欧洲 丝袜| 亚洲一区二区三区无码影院| 伊人亚洲综合青草青草久热| 久久亚洲国产午夜精品理论片| 亚洲av福利无码无一区二区 | 久久久久久久久无码精品亚洲日韩| 亚洲av无码有乱码在线观看| 国产亚洲人成在线影院| 中文亚洲成a人片在线观看| 亚洲V无码一区二区三区四区观看 亚洲αv久久久噜噜噜噜噜 | 337p日本欧洲亚洲大胆人人| 亚洲成a人一区二区三区| 亚洲中文字幕无码不卡电影| 亚洲AV无码乱码国产麻豆| 亚洲熟妇无码爱v在线观看|