修改容器配置文件
命令说明
使用如下命令可以修改指定路径下容器的配置文件:
[root@sylixos:/apps]# ecs cfg bundlePath -d jsonConfig
该命令参数说明如下:
bundlePath
为容器 Bundle 路径。-d
为固定选项。jsonConfig
为修改后的 json 格式内容。
注意:
-d
为必须选项,后跟具体修改内容,若无此选项,则无法修改 config 配置文件。
支持修改的配置选项
注意:
该命令仅支持修改配置选项 "sylixos" 下的 "resources" 中部分配置,具体内容如下表所示
容器内线程优先级配置 "cpu"
配置对象 | 配置选项 | 内容说明 | 值类型 |
---|---|---|---|
cpu | highestPrio | 线程最高优先级 | Number |
cpu | lowestPrio | 线程最低优先级 | Number |
cpu | defaultPrio | 线程默认优先级 | Number |
容器内线程绑核配置 "affinity"
配置对象 | 配置选项 | 内容说明 | 值类型 |
---|---|---|---|
affinity | 容器内线程绑核 | Array |
容器内存配置 "memory"
配置对象 | 配置选项 | 内容说明 | 值类型 |
---|---|---|---|
memory | kheapLimit | 最大内核堆大小,单位 Byte | Number |
memory | memoryLimitMB | 最大内存,单位 MB | Number |
容器内核对象配置 "kernelObject"
配置对象 | 配置选项 | 内容说明 | 值类型 |
---|---|---|---|
kernelObject | threadLimit | 最大线程数 | Number |
kernelObject | threadPoolLimit | 最大线程池数 | Number |
kernelObject | eventLimit | 最大事件数 | Number |
kernelObject | eventSetLimit | 最大事件集数 | Number |
kernelObject | partitionLimit | 最大定长分区数 | Number |
kernelObject | regionLimit | 最大变长分区数 | Number |
kernelObject | msgQueueLimit | 最大消息队列数 | Number |
kernelObject | timerLimit | 最大定时器数 | Number |
kernelObject | rmsLimit | 最大 RMS 调度器数 | Number |
kernelObject | threadVarLimit | 最大线程私有变量数 | Number |
kernelObject | posixMqueueLimit | 最大 posix 消息队列数 | Number |
kernelObject | dlopenLibraryLimit | 最大 dlopen 共享库数 | Number |
kernelObject | xsiipcLimit | 最大 xsiipc 数 | Number |
kernelObject | socketLimit | 最大 socket 数 | Number |
kernelObject | srtpLimit | 最大 srtp 进程数 | Number |
kernelObject | deviceLimit | 最大全局设备数量 | Number |
容器磁盘配置 "disk"
配置对象 | 配置选项 | 内容说明 | 值类型 |
---|---|---|---|
disk | limitMB | 磁盘空间限制,单位 MB | Number |
参考示例
注意: 具体配置修改内容为json格式,即字符串类型,因此需要注意转义字符的使用,例如 \" ,若无转义字符可能会出现配置失败的结果。
将容器的系统线程最高优先级修改为100的范例如图所示,可以看到如下程序输出:
[root@sylixos:/apps]# ecs cfg /apps/ecs_demo -d {\"sylixos\":{\"resources\":{\"cpu\":{\"highestPrio\":100}}}}
配置文件修改前:
配置文件修改后,可以看到配置文件已成功修改,同时生成备份文件 config.bak
: