Memcached是一款高性能、分布式的内存对象缓存系统,设计用于加速动态Web应用,通过减轻数据库负载提升应用响应速度。其通用架构使其适用于多种场景,核心功能是将频繁访问的数据存储在内存中,减少对后端数据库的直接查询。
Bitnami Memcached Docker镜像是预配置的轻量级部署方案,旨在简化Memcached的搭建流程。该镜像基于Bitnami安全最佳实践构建,提供开箱即用的缓存服务,支持快速集成到开发、测试及生产环境。
安全加固:遵循Bitnami Secure Images标准,基于最小化Photon Linux操作系统构建,减少***面,提供CVE透明度(通过VEX/KEV)、软件物料清单(SBOM)及安全 attestation签名。
非root用户运行:容器默认以非root用户(memcached)运行,降低权限提升风险,符合生产环境安全最佳实践。
配置灵活性:支持通过环境变量自定义缓存大小、连接数、认证信息等核心参数,同时提供自定义SASL配置能力。
标准化部署:与Bitnami Helm Charts兼容,支持Docker Compose及Kubernetes等多种部署方式,确保开发与生产环境配置一致性。
供应链安全:通过SLSA-3合规的构建工厂生成,包含病毒扫描报告、漏洞利用评分(EPSS)及及时的上游补丁更新。
注意:该镜像的免费版本(latest标签)主要面向开发用途,生产环境建议使用Bitnami Secure Images商业版以获取长期支持。
consoledocker run --name memcached bitnami/memcached:latest
自2025年8月28日起,Bitnami将对公共镜像仓库进行重大调整:
docker.io/bitnamilegacy仓库,不再接收更新。详细信息参见https://github.com/bitnami/containers/issues/83267%E3%80%82
从Docker Hub获取最新版本:
consoledocker pull bitnami/memcached:latest
指定版本拉取(需注意2025年8月28日后版本标签迁移至legacy仓库):
consoledocker pull bitnami/memcached:[TAG] # 例如: docker pull bitnami/memcached:2.50.0
consolegit clone https://github.com/bitnami/containers.git cd bitnami/memcached/[VERSION]/[OS] # 替换为具体版本和操作系统 docker build -t bitnami/memcached:latest .
console# 基本运行(默认配置:64MB缓存,11211端口) docker run --name memcached -p 11211:11211 bitnami/memcached:latest # 自定义缓存大小(128MB) docker run --name memcached -e MEMCACHED_CACHE_SIZE=128 -p 11211:11211 bitnami/memcached:latest # 启用认证(用户名my_user,密码my_password) docker run --name memcached \ -e MEMCACHED_USERNAME=my_user \ -e MEMCACHED_PASSWORD=my_password \ -p 11211:11211 \ bitnami/memcached:latest
创建docker-compose.yml文件:
yamlversion: '2' networks: app-tier: driver: bridge services: memcached: image: bitnami/memcached:latest ports: - "11211:11211" environment: - MEMCACHED_CACHE_SIZE=256 # 缓存大小256MB - MEMCACHED_MAX_CONNECTIONS=2048 # 最大连接数2048 networks: - app-tier # 应用服务示例(需替换为实际应用镜像) myapp: image: YOUR_APPLICATION_IMAGE networks: - app-tier depends_on: - memcached
启动服务:
consoledocker-compose up -d
方法1:使用Docker网络
console# 创建网络 docker network create app-tier --driver bridge # 启动Memcached并加入网络 docker run -d --name memcached-server --network app-tier bitnami/memcached:latest # 应用容器连接到同一网络(使用memcached-server作为主机名访问) docker run -d --name myapp --network app-tier YOUR_APPLICATION_IMAGE
方法2:Docker Compose自动网络(见7.2示例)
Compose自动创建网络并连接所有服务,应用容器通过服务名(如memcached)访问缓存服务。
8.1.1 可定制环境变量
| 变量名 | 描述 | 默认值 |
|---|---|---|
MEMCACHED_LISTEN_ADDRESS | 服务绑定地址 | nil |
MEMCACHED_PORT_NUMBER | 服务端口号 | 11211 |
MEMCACHED_USERNAME | 管理员用户名 | root |
MEMCACHED_PASSWORD | 管理员密码(未设置则禁用认证) | nil |
MEMCACHED_MAX_ITEM_SIZE | 最大item大小(字节,如8388608=8MB) | nil |
MEMCACHED_EXTRA_FLAGS | 额外启动参数(如-vvv开启详细日志) | nil |
MEMCACHED_MAX_TIMEOUT | 启动/停止超时时间(秒) | 5 |
MEMCACHED_CACHE_SIZE | 缓存大小(MB) | nil |
MEMCACHED_MAX_CONNECTIONS | 最大并发连接数 | nil |
MEMCACHED_THREADS | 工作线程数 | nil |
8.1.2 只读环境变量(内部配置)
| 变量名 | 描述 | 值 |
|---|---|---|
MEMCACHED_BASE_DIR | 安装目录 | ${BITNAMI_ROOT_DIR}/memcached |
MEMCACHED_CONF_DIR | 配置目录 | ${MEMCACHED_BASE_DIR}/conf |
MEMCACHED_BIN_DIR | 可执行文件目录 | ${MEMCACHED_BASE_DIR}/bin |
SASL_CONF_PATH | SASL配置目录 | ${MEMCACHED_CONF_DIR}/sasl2 |
SASL_DB_FILE | SASL用户数据库文件路径 | ${SASL_CONF_PATH}/memcachedsasldb |
MEMCACHED_DAEMON_USER | 运行用户 | memcached |
MEMCACHED_DAEMON_GROUP | 运行用户组 | memcached |
调整缓存大小
consoledocker run --name memcached -e MEMCACHED_CACHE_SIZE=512 bitnami/memcached:latest
设置最大连接数
consoledocker run --name memcached -e MEMCACHED_MAX_CONNECTIONS=4096 bitnami/memcached:latest
配置工作线程数
consoledocker run --name memcached -e MEMCACHED_THREADS=8 bitnami/memcached:latest
自定义启动参数
console# 开启详细日志(-vvv)并限制CPU使用(-c 1024) docker run --name memcached bitnami/memcached:latest /opt/bitnami/scripts/memcached/run.sh -vvv -c 1024
默认认证启用时,SASL配置文件位于/opt/bitnami/memcached/sasl2/memcached.conf,内容如下:
configmech_list: plain sasldb_path: /opt/bitnami/memcached/conf/memcachedsasldb
自定义SASL配置方法:
sasl2目录的卷:consoledocker run --name memcached -v /path/to/custom/sasl2:/opt/bitnami/memcached/conf/sasl2 bitnami/memcached:latest
商业版Secure Images支持FIPS模式,通过环境变量控制:
OPENSSL_FIPS:是否启用FIPS模式,可选值yes(默认)/no容器日志输出至stdout,可通过以下命令查看:
console# 查看单个容器日志 docker logs memcached # 查看Compose服务日志 docker-compose logs memcached # 实时日志 docker logs -f memcached
可通过--log-driver参数配置日志驱动(如json-file、syslog等):
consoledocker run --name memcached --log-driver json-file --log-opt max-size=10m bitnami/memcached:latest
console# 1. 获取最新镜像 docker pull bitnami/memcached:latest # 2. 停止并删除旧容器(数据非持久化场景) docker stop memcached && docker rm memcached # 3. 启动新容器 docker run --name memcached -p 11211:11211 bitnami/memcached:latest
Memcached为内存数据库,默认无持久化。如需状态保留,需使用外部工具(如memcached-tool)定期备份。
/opt/bitnami/memcached/conf/sasl2/;支持通过MEMCACHED_PASSWORD_FILE文件传入密码。1001运行。MEMCACHED_USER参数重命名为MEMCACHED_USERNAME。stdout,不再写入卷。Copyright © 2025 Broadcom. 本软件包由Bitnami打包,相关商标归各自公司所有。许可协议遵循Apache License 2.0,详情参见Apache官方网站。
注意:2025年8月28日后,历史版本镜像将迁移至
bitnamilegacy仓库且不再更新,生产环境请使用Bitnami Secure Images商业版。
以下是 bitnami/memcached 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务