【OpenFOAM案例】03 Docker安装OpenFOAM

“工欲善其事必先利其器”,软件装不上,讲再多的使用技巧也是白搭。近期不少留言说OpenFOAM不容易安装,今天来谈谈如何在Linux下利用Docker安装OpenFOAM。

Linux发行版众多,估计有几百种,比较流行的是三个派系:

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

OpenFOAM对于Ubuntu专门提供了安装方式,利用apt-get方法快速的安装。不过对于其他的linux发行版,则没那么方便了,下面的方法主要针对ubuntu以外的linux系统,不过也同样适用于ubuntu。

本文采用的是Docker方式安装OpenFOAM,其实也可以利用源代码编译的方式安装,不过编译过程耗时较长。

以下内容以CentOS为基础进行解说,其他发行版并未经过测试。

1 安装前的准备工作

确保自己使用的Linux内核足够新。在终端中输入命令查看操作系统内核版本号:

uname -r

至少保证内核版本高于3.10。如下图所示,此操作系统内核版本为3.10,满足安装要求。

注意:确保网络畅通。

69912946.jpg

2 安装Docker

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。关于Docker,可以自己上网搜索。

2.1 RHEL、CentOS及Fedora

输入命令更新源:

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,如果网速非常慢可能会出错,多试几次。连接成功后会下载文件,好几百兆的文件,可能会持续很久。

出现如下图所示情况后,耐心等待吧,几百兆的文件估计要下载很久很久(建议爬墙,否则会很慢)。

15316180.jpg

6 测试OpenFOAM

当所有的文件都下载完毕后,终端会自动进行解压。

解压完毕后会自动启动Docker,此时可以在里面运行OpenFOAM。

依次输入以下命令:

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

如下图所示。

5839400.jpg

计算结果如图所示。

23129420.jpg

若要关闭docker,则可以使用命令:

exit

关闭后若要再次启动Docker,可使用命令:

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

启动Docker后就可以使用OpenFOAM的各种功能了。


更多关于CFD内容,可微信扫描下方二维码关注微信公众号。
593fe2f2d0c06.jpg

转载于:https://www.cnblogs.com/LSCAX/p/7074326.html

<think>好的,我现在需要帮用户解决OpenFOAM的离线安装问题。用户提到了Linux和Windows系统,但根据提供的引用内容,所有资料都是关于Linux的,比如Ubuntu和RHEL,而Windows可能没有直接的离线安装方法,可能需要通过虚拟机或者WSL。首先,我得整理引用中的信息。 引用[1]提到了Ubuntu下安装OpenFOAM-2.3.1的步骤,但可能是在线安装?不过用户需要离线,所以需要确认是否有离线包。引用[3]是关于RHEL 7.6的离线安装,步骤包括启用仓库、安装依赖包和编译,这说明可能需要下载依赖包和源码进行编译安装。引用[2]是关于Qt离线安装包的下载和安装,可能OpenFOAM依赖Qt,所以用户需要提前安装Qt的离线包。 接下来,用户可能需要分步骤的指导。对于Linux系统,通常离线安装需要下载源码包和所有依赖项,然后在离线环境中编译。首先,下载OpenFOAM的源代码,比如从官网或镜像站获取tar包。然后处理依赖项,可能需要逐个下载deb或rpm包,或者使用docker镜像。 另外,用户可能需要知道如何获取依赖包。例如在Ubuntu上,可以使用apt-offline工具生成依赖清单,然后在有网络的环境下载,再转移到离线机器安装。对于RHEL,可能用yum的downloadonly插件,或者使用createrepo创建本地仓库。 对于Windows,由于OpenFOAM主要是为Linux设计的,可能需要通过Cygwin或者Windows子系统Linux(WSL)来安装,这时候可能需要按照Linux的离线步骤在WSL环境中操作。不过引用中没有提到Windows的具体方法,需要提醒用户可能存在的限制。 需要注意用户提供的引用中有RHEL的编译步骤,这可能意味着某些版本需要从源码编译,这需要安装编译工具链和库文件,比如gcc, cmake等,这些也需要离线安装,可能需要提前下载所有开发依赖。 最后,生成相关问题需要考虑用户可能的后续疑问,比如依赖包如何获取,如何解决编译错误,验证安装是否成功,以及不同Linux发行版之间的差异等。同时,提醒用户Windows安装可能不如Linux方便,建议使用Linux环境。</think>### OpenFOAM离线安装方法 #### **Linux系统离线安装步骤** 1. **下载OpenFOAM源码包** - 访问[OpenFOAM官网](https://openfoam.org/download/)或[镜像站](https://develop.openfoam.com/Development/openfoam/-/releases),选择对应版本(如`OpenFOAM-v2212`)的源码包(`.tar.gz`格式)[^1]。 - 示例命令: ```bash wget https://dl.openfoam.com/source/v2212/OpenFOAM-v2212.tgz ``` 2. **处理依赖项** - **Ubuntu/Debian**: 使用`apt-offline`生成依赖清单,联网下载后离线安装: ```bash sudo apt-get install apt-offline apt-offline set dependencies.sig --install-packages <package-list> # 将生成的.sig文件传输至联网环境,使用apt-offline下载依赖包 ``` - **RHEL/CentOS**: 使用`yumdownloader`下载依赖包: ```bash yum install yum-utils yumdownloader --resolve <package-name> ``` 将下载的`.rpm`包复制到离线环境,通过`rpm -ivh *.rpm`安装[^3]。 3. **编译安装OpenFOAM** - 解压源码并进入目录: ```bash tar -xvf OpenFOAM-v2212.tgz cd OpenFOAM-v2212 ``` - 设置环境变量: ```bash source etc/bashrc ``` - 编译(需GCC、CMake等工具): ```bash ./Allwmake -j 4 # 根据CPU核心数调整并行编译进程数 ``` 编译完成后验证:`simpleFoam -help`。 4. **可选:依赖Qt时的处理** - 若需Qt支持(如可视化工具),下载Qt离线安装包: ```bash wget https://download.qt.io/archive/qt/5.12/5.12.12/qt-opensource-linux-x64-5.12.12.run chmod +x qt-opensource-linux-x64-5.12.12.run ./qt-opensource-linux-x64-5.12.12.run # 图形界面安装[^2] ``` --- #### **Windows系统安装建议** OpenFOAM原生不支持Windows,可通过以下方式实现: 1. **Windows子系统Linux (WSL)** - 安装WSL(如Ubuntu发行版),在WSL中按上述Linux步骤操作。 2. **虚拟机或Docker** - 使用VirtualBox安装Linux虚拟机,或拉取OpenFOAM Docker镜像: ```bash docker pull openfoam/openfoam-v2206 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值