我已經(jīng)設(shè)置了我的 Dockerfile,它看起來像這樣:FROM python:3.6ARG labelARG seedsARG dataset_name=${label}_termsRUN mkdir /prodigyWORKDIR /prodigyCOPY ./prodigy-1.8.1-cp35.cp36.cp37-cp35m.cp36m.cp37m-linux_x86_64.whl /prodigyRUN pip install prodigy-1.8.1-cp35.cp36.cp37-cp35m.cp36m.cp37m-linux_x86_64.whlRUN pip install -U spacyRUN python -m spacy download en_core_web_lgEXPOSE 8080RUN mkdir /workENV PRODIGY_HOME /workWORKDIR /workCOPY ./prodigy.json /workRUN prodigy dataset ${dataset_name}ENV LABEL=${label}ENV SEEDS=${seeds}CMD prodigy terms.teach ${LABEL}_terms en_core_web_lg --seed "$SEEDS"它有效,但不如預(yù)期。它應(yīng)該只運行一次 CMD 命令。相反,它有 3 種不同的方式(ps aux 輸出):USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 4280 692 ? Ss 08:47 0:00 /bin/sh -c prodigy terms.teach ${LABEL}_terms en_core_web_lg --seed "$SEEDS"root 8 0.0 0.0 4280 740 ? S 08:47 0:00 /bin/sh /usr/local/bin/prodigy terms.teach TRANSFER_terms en_core_web_lg --seed transfer, relocation, relegationroot 9 46.1 13.7 2329976 1687016 ? Sl 08:47 15:13 python -m prodigy terms.teach TRANSFER_terms en_core_web_lg --seed transfer, relocation, relegation我想知道這是什么標(biāo)準(zhǔn)行為?我怎樣才能讓我的 Dockerfile 干凈?
Docker容器運行CMD命令三種不同的方式,為什么?
慕田峪4524236
2022-04-23 21:05:14