之前用的是阿里云云数据库memcache版,昨天改为用阿里云服务器通过docker部署memcached容器,请问容器中的memcached默认内存容量是多大以及如何修改这个设置?
memcached 默认内存容量是 64M ,可以通过下面的命令查看
# echo "stats settings" | nc localhost 11211 | grep maxbytes
STAT maxbytes 67108864
通过 memcached 的 Dockerfile 知道 memcached 容器启动时执行的是 docker-entrypoint.sh :
#!/bin/sh
set -e
# first arg is `-f` or `--some-option`
if [ "${1#-}" != "$1" ]; then
set -- memcached "$@"
fi
exec "$@"
通过下面的命令启动一个修改了内存容量的新容器(通过 -m 15360 参数设置为15G)并关闭旧容器
# docker run -d --net=host --restart unless-stopped memcached -m 15360 && docker stop 547de54baeca
问题解决
# echo "stats settings" | nc localhost 11211 | grep maxbytes
STAT maxbytes 16106127360