1

Docker Toolbox を使用してこの Dockerfile からSyntaxNetインストールしようとしたときに、仮想メモリを使い果たしました。Dockerfile のコンパイル時に次のメッセージを受け取りました。

ERROR: /root/.cache/bazel/_bazel_root/5b21cea144c0077ae150bf0330ff61a0/external/org_tensorflow/tensorflow/core/kernels/BUILD:1921:1: C++ compilation of rule '@org_tensorflow//tensorflow/core/kernels:svd_op' failed: gcc failed: error executing command /usr/bin/gcc -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -Wall -Wl,-z,-relro,-z,now -B/usr/bin -B/usr/bin -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-canonical-system-headers ... (remaining 115 argument(s) skipped): com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 1. virtual memory exhausted: Cannot allocate memory ____Building complete. ____Elapsed time: 8548.364s, Critical Path: 8051.91s

これは、Bazel のデフォルトのジョブ制限を (たとえば)--jobs=1に変更することで解決できる気がしますが、それを Dockerfile のどこに置くかはわかりません。

4

1 に答える 1