gpt4 book ai didi

docker - 从 docker-compose.yml 将参数传递到 docker 容器

转载 作者:行者123 更新时间:2023-12-02 20:40:39 24 4
gpt4 key购买 nike

我正在尝试从手动调用 docker 迁移,如下所示:

docker run -v /tmp/bazel:/data -p 9090:8080 buchgr/bazel-remote-cache --max_size=1300
使用 docker-compose.yml文件,但似乎不知道如何通过 --max_size从它到容器:
version: "3"
services:
worker:
image: buchgr/bazel-remote-cache
deploy:
mode: replicated
replicas: 2
restart_policy:
condition: on-failure
delay: 10s
max_attempts: 3
window: 120s
ports:
- 9090:8080
- 6060:6060
#args:
#- max_size=1300
volumes:
- "/bazel_cache:/data"

visualizer:
image: dockersamples/visualizer:stable
ports:
- 8080:8080
stop_grace_period: 1m30s
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
deploy:
placement:
constraints: [node.role == manager]
我在这里想念什么?我试过 args: ..有点,但 docker 提示它:
$ docker stack deploy -c docker-compose.yml bazel_remote_cache
args Additional property args is not allowed

最佳答案

docker run 中的图像名称之后传递的任何内容被解释为“命令”部分,您可以在 command: 中传递它docker-compose.yml 中的字段:

version: "3"
services:
worker:
command: --max_size=1300
您可以单独覆盖 entrypoint: (相当于 docker run --entrypoint )如果您需要替换该字段。
如果您控制服务,还可以考虑通过环境变量设置这些值;这通常比提供命令行参数更容易在部署层设置。如果您可以使默认的主命令变短,指定 command: run_service --max_size=1300作为一个完整的命令,这里也更清楚。

关于docker - 从 docker-compose.yml 将参数传递到 docker 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64341356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com