gpt4 book ai didi

docker compose 3 sysctls 指令不受支持

转载 作者:行者123 更新时间:2023-12-04 21:33:33 39 4
gpt4 key购买 nike

我在 docker-compose 文件中有一个 sysctls 设置,但据我了解,此指令在版本 3 中被忽略:

sysctls:
- net.core.somaxconn = 65536
- net.ipv4.tcp_max_tw_buckets = 1440000
- net.ipv4.ip_local_port_range = 1024 65000
- net.ipv4.tcp_fin_timeout = 15
- net.ipv4.tcp_window_scaling = 1
- net.ipv4.tcp_max_syn_backlog = 3240000
- fs.file-max = 20480

我需要找到另一种方法来设置这些参数,但我无法从文档(尝试过 RUN 和 CMD)中确切地弄清楚如何,我需要一个清晰的示例来展示如何执行此操作。
我知道通常从命令行它是这样的:
sudo sysctl -w net.core.somaxconn=65536

谢谢。

最佳答案

对于版本 3 docker-compose 文件,该选项仍然适用于 docker-compose,但在 docker swarm 中不起作用。

This option is ignored when deploying a stack in swarm mode with a (version 3) Compose file.



这是因为 sysctl读取和修改系统内核的属性,因此在容器中运行它没有意义。 docker swarm 不再支持它是合乎逻辑的,因为如果您有 2 个堆栈/docker-compose.yml 都使用此指令,则会发生冲突。

所以唯一的方法是在主机上运行命令。

关于docker compose 3 sysctls 指令不受支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44525301/

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