Назад | Перейти на главную страницу

Запустить приложение mpi в докере

Я играю с докером и хотел иметь возможность запускать в нем приложение mpi.

Я использую ubuntu: latest в качестве базового образа, и я установил необходимые инструменты для компиляции моей программы и связывания ее с mpi.

Когда я запускаю программу с помощью mpirun, я получаю следующие предупреждения:

[c1dab84c3fac:10417] [[INVALID],INVALID] ORTE_ERROR_LOG: Not found in file ess_hnp_module.c at line 170
--------------------------------------------------------------------------
It looks like orte_init failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems.  This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer):

orte_plm_base_select failed
  --> Returned value Not found (-13) instead of ORTE_SUCCESS
--------------------------------------------------------------------------
[c1dab84c3fac:10417] [[INVALID],INVALID] ORTE_ERROR_LOG: Not found in file runtime/orte_init.c at line 128
--------------------------------------------------------------------------
It looks like orte_init failed for some reason; your parallel process is
likely to abort.  There are many reasons that a parallel process can
fail during orte_init; some of which are due to configuration or
environment problems.  This failure appears to be an internal failure;
here's some additional information (which may only be relevant to an
Open MPI developer):

orte_ess_set_name failed
  --> Returned value Not found (-13) instead of ORTE_SUCCESS
--------------------------------------------------------------------------
[c1dab84c3fac:10417] [[INVALID],INVALID] ORTE_ERROR_LOG: Not found in file orterun.c at line 694

Если я запустил ту же программу в обычном ubuntu (той же версии), она запустится.

Я недавно столкнулся с этой проблемой. Установка пакета ssh решит эту проблему.

Контейнер Docker не похож на обычный Ubuntu. В контейнере Ubuntu по умолчанию отсутствуют основные элементы (пример: init, ssh daemon, cron)

Обычно я использую докер базового изображения phusion, goto, как показано ниже, чтобы узнать больше о некоторых основных проблемах в докере Ubuntu по умолчанию и о том, как эти проблемы могут быть решены.

http://phusion.github.io/baseimage-docker/