首页 > 解决方案 > 如何使用 nohup 让 docker 命令在后台运行

问题描述

我正在运行一个 docker 命令:

docker exec -t -i 44a1459f4468 cloudgene run imputationserver@1.4.1 --files /chrX_impute/ALL.chrX.Non.Pseudo.Auto.phase3_v5.shapeit2_mvncall_integrated.noSingleton.genotypes.vcf.gz --refpanel apps@1000g-phase-3-v5@2.0.0 --conf /etc/hadoop/conf --population mixed --mode qconly --output /chrX_impute/ALL.chrX.Non >  ALL.chrX.Non.qc.log 2>&1

使用我从Redirecting output of nohup in docker not working和重定向中得到的建议

但是,当我运行此命令时,它不会在后台运行。

https://unix.stackexchange.com/questions/268284/nohup-doesnt-work-as-expected-in-docker-script听起来好像添加-t会使它像shell命令一样运行,但这只有效与码头工人run

如何让这个 docker 命令与 nohup 一起运行?

标签: linuxdockercentos

解决方案


从 docker exec 文档页面https://docs.docker.com/engine/reference/commandline/exec/

--interactive , -i      Keep STDIN open even if not attached
--tty , -t              Allocate a pseudo-TTY

我想同时删除-i-t标志可能就足够了


推荐阅读