【OpenFOAM案例】03 Docker安裝OpenFOAM

「工欲善其事必先利其器」,軟件裝不上,講再多的使用技巧也是白搭。近期很多留言說OpenFOAM不容易安裝,今天來談談如何在Linux下利用Docker安裝OpenFOAM。linux

Linux發行版衆多,估計有幾百種,比較流行的是三個派系:docker

  • RHEL系。比較出名的發行版像Red Hat Enterprise、CentOS、Fedora等
  • SuSE系。像OpenSUSE等
  • Debian系。流行的如Ubuntu、Linux Mint等

OpenFOAM對於Ubuntu專門提供了安裝方式,利用apt-get方法快速的安裝。不過對於其餘的linux發行版,則沒那麼方便了,下面的方法主要針對ubuntu之外的linux系統,不過也一樣適用於ubuntu。shell

本文采用的是Docker方式安裝OpenFOAM,其實也能夠利用源代碼編譯的方式安裝,不過編譯過程耗時較長。ubuntu

如下內容以CentOS爲基礎進行解說,其餘發行版並未通過測試。centos

1 安裝前的準備工做

確保本身使用的Linux內核足夠新。在終端中輸入命令查看操做系統內核版本號:微信

uname -r

至少保證內核版本高於3.10。以下圖所示,此操做系統內核版本爲3.10,知足安裝要求。網絡

注意:確保網絡暢通。curl

2 安裝Docker

Docker是一個開源的應用容器引擎,讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口。關於Docker,能夠本身上網搜索。測試

2.1 RHEL、CentOS及Fedora

輸入命令更新源:url

sudo yum -y update(在RHEL及CentOS上)
sudo dnf -y update(在Fedora上)

輸入一下命令安裝Docker:

curl -fsSL https://get.docker.com/ | sh
sudo systemctl enable docker.service
sudo systemctl start docker

第一條命令安裝過程會持續好久,視網速而定,須要耐心等待。

2.2 SLES以及openSuSE

在SLES發行版上,要先輸入:

sudo SUSEConnect -p sle-module-containers/12/x86_64 -r ''

以後輸入(SLES及openSuSE上):

sudo zypper -n in docker
sudo systemctl start docker
sudo systemctl enable docker

2.3 Debian

輸入命令:

sudo apt-get -y update
curl -fsSL https://get.docker.com/ | sh

3 配置Docker

輸入命令將用戶添加到Docker中。

sudo usermod -aG docker $(whoami)

4 安裝openfoam4-linux

輸入命令:

sudo sh -c "wget http://dl.openfoam.org/docker/openfoam4-linux -O /usr/bin/openfoam4-linux"
sudo chmod 755 /usr/bin/openfoam4-linux

5 運行openfoam4-linux

輸入命令:

mkdir -p $HOME/OpenFOAM/${USER}-4.1
cd $HOME/OpenFOAM/${USER}-4.1
openfoam4-linux

最後一個命令由於要鏈接docker,若是網速很是慢可能會出錯,多試幾回。鏈接成功後會下載文件,好幾百兆的文件,可能會持續好久。

出現以下圖所示狀況後,耐心等待吧,幾百兆的文件估計要下載好久好久(建議爬牆,不然會很慢)。

6 測試OpenFOAM

當全部的文件都下載完畢後,終端會自動進行解壓。

解壓完畢後會自動啓動Docker,此時能夠在裏面運行OpenFOAM。

依次輸入如下命令:

cd $FOAM_RUN
cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily .
cd pitzDaily
blockMesh
simpleFoam
paraFoam

以下圖所示。

計算結果如圖所示。

若要關閉docker,則可使用命令:

exit

關閉後若要再次啓動Docker,可以使用命令:

service docker start
cd $HOME/OpenFOAM/${USER}-4.1
openfoam4-linux

啓動Docker後就可使用OpenFOAM的各類功能了。


更多關於CFD內容,可微信掃描下方二維碼關注微信公衆號。

相關文章
相關標籤/搜索