![](/img/trans.png)
[英]How to pass argument to docker container when running docker-compose up
[英]How to pass argument to docker-compose
import argparse
parser = argparse.ArgumentParser()
parser.add_argument(
'--strat',
type=str,
)
args = parser.parse_args()
strat = args.strat
我想糾正我的 docker-compose.yml 文件,例如我只是從那里傳遞我的論點。 我做了
version: "3.3"
services:
mm:
container_name: mm
stdin_open: true
build: .
context: .
dockerfile: Dockerfile
args:
strat: 1
和我的 docker 文件
FROM python:3.10.7
COPY . .
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt
CMD python3 main.py
但它不起作用。
知道我應該改變什么嗎?
您需要更新 docker 文件以處理構建 arguments 。 嘗試以下操作:
ARG strat
# ...
CMD python3 main.py --strat=$strat
args
thingy 僅用於“構建時間”。 如果您想使用不同的 arguments 運行已構建的映像,請使用環境變量或像使用常規二進制文件一樣傳遞它們。
像: docker compose run backend./manage.py makemigrations
在這里你看到./manage.py
和makemigrations
是兩個 arguments 傳遞給 docker-compose.yml 中定義的backend
服務
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.