2.6.17
,2.6
(2.6/Dockerfile)2.6.17-32bit
,2.6-32bit
(2.6/32bit/Dockerfile)2.8.23
,2.8
,2
(2.8/Dockerfile)2.8.23-32bit
,2.8-32bit
,2-32bit
(2.8/32bit/Dockerfile)3.0.5
,3.0
,3
,latest
(3.0/Dockerfile)3.0.5-32bit
,3.0-32bit
,3-32bit
,32bit
(3.0/32bit/Dockerfile)
For more information about this image and its history, please see the relevant manifest file (library/redis
). This image is updated via pull requests to the docker-library/official-images
GitHub repo.
For detailed information about the virtual/transfer sizes and individual layers of each of the above supported tags, please see the redis/tag-details.md
file in the docker-library/docs
GitHub repo.
Redis is an open-source, networked, in-memory, key-value data store with optional durability. It is written in ANSI C. The development of Redis has been sponsored by Pivotal since May 2013; before that, it was sponsored by VMware. According to the monthly ranking by DB-Engines.com, Redis is the most popular key-value store. The name Redis means REmote DIctionary Server.
$ docker run --name some-redis -d redis
This image includes EXPOSE 6379
(the redis port), so standard container linking will make it automatically available to the linked containers (as the following examples illustrate).
$ docker run --name some-redis -d redis redis-server --appendonly yes
If persistence is enabled, data is stored in the VOLUME /data
, which can be used with --volumes-from some-volume-container
or -v /docker/host/dir:/data
(see docs.docker volumes).
For more about Redis Persistence, see http://redis.io/topics/persistence.
$ docker run --name some-app --link some-redis:redis -d application-that-uses-redis
$ docker run -it --link some-redis:redis --rm redis sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
You can create your own Dockerfile that adds a redis.conf from the context into /data/, like so.
FROM redis
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
Alternatively, you can specify something along the same lines with docker run
options.
$ docker run -v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf --name myredis redis redis-server /usr/local/etc/redis/redis.conf
Where /myredis/conf/
is a local directory containing your redis.conf
file. Using this method means that there is no need for you to have a Dockerfile for your redis container.
This variant is not a 32bit image (and will not run on 32bit hardware), but includes Redis compiled as a 32bit binary, especially for users who need the decreased memory requirements associated with that. See "Using 32 bit instances" in the Redis documentation for more information.
View license information for the software contained in this image.
This image is officially supported on Docker version 1.9.1.
Support for older versions (down to 1.6) is provided on a best-effort basis.
Please see the Docker installation documentation for details on how to upgrade your Docker daemon.
Documentation for this image is stored in the redis/
directory of the docker-library/docs
GitHub repo. Be sure to familiarize yourself with the repository's README.md
file before attempting a pull request.
If you have any problems with or questions about this image, please contact us through a GitHub issue.
You can also reach many of the official image maintainers via the #docker-library
IRC channel on Freenode.
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
Before you start to code, we recommend discussing your plans through a GitHub issue, especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.