Giter VIP home page Giter VIP logo

redis's Introduction

Maintained by: the Docker Community

This is the Git repo of the Docker "Official Image" for redis (not to be confused with any official redis image provided by redis upstream). See the Docker Hub page for the full readme on how to use this Docker image and for information regarding contributing and issues.

The full image description on Docker Hub is generated/maintained over in the docker-library/docs repository, specifically in the redis directory.

See a change merged here that doesn't show up on Docker Hub yet?

For more information about the full official images change lifecycle, see the "An image's source changed in Git, now what?" FAQ entry.

For outstanding redis image PRs, check PRs with the "library/redis" label on the official-images repository. For the current "source of truth" for redis, see the library/redis file in the official-images repository.


  • build status badge
  • build status badge
Build Status Badges (per-arch)
amd64 build status badge arm32v5 build status badge arm32v6 build status badge arm32v7 build status badge
arm64v8 build status badge i386 build status badge mips64le build status badge ppc64le build status badge
s390x build status badge put-shared build status badge

redis's People

Contributors

alexellis avatar astha-textiq avatar chayim avatar dmaier-redislabs avatar docker-library-bot avatar encodeering avatar flori avatar gerardorochin avatar j0wi avatar jmthomas avatar laurentgoderre avatar michael-k avatar peterdavehello avatar tao12345666333 avatar tianon avatar timwolla avatar voxxit avatar yosifkit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

redis's Issues

libtasn1-6 and libidn11 security updates

The packages libtasn1-6 and libidn11 need to be updated in the current redis image on Docker Hub.

https://www.debian.org/security/2016/dsa-3568

For the stable distribution (jessie), this problem has been fixed in version 4.2-3+deb8u2.

https://www.debian.org/security/2016/dsa-3578

For the stable distribution (jessie), this problem has been fixed in version 1.29-1+deb8u1.

$ docker pull redis | grep 'up to date'; date --utc
Status: Image is up to date for redis:latest
Tue May 17 15:04:00 UTC 2016

$ docker run --rm -it redis bash

root@57eddfabe831:/data# dpkg -l | grep libtasn | sed -r 's/  +/  /g'
ii  libtasn1-6:amd64  4.2-3+deb8u1  amd64  Manage ASN.1 structures (runtime)
                      ~~~~~~~~~~~~

root@57eddfabe831:/data# dpkg -l | grep libidn | sed -r 's/  +/  /g'
ii  libidn11:amd64  1.29-1+b2  amd64  GNU Libidn library, implementation of IETF IDN specifications
                    ~~~~~~~~~

root@57eddfabe831:/data# apt-get update
[...]
Reading package lists... Done

root@57eddfabe831:/data# apt-get upgrade
[...]
The following packages will be upgraded:
  libidn11 libtasn1-6
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[...]

Thanks for your valuable effort!

commands are executed twice within docker-entrypoint.sh of version 3.2

exec gosu redis "$0" "$@"
this in docker-entrypoint.sh makes above commands executed twice. such as following when I set -ex in it:

root@ubuntu:~/Desktop/redis/3.2/alpine# docker run -it --rm redis-orig
+ [ redis-server != redis-server ]
+ [ redis-server != redis-server ]
+ id -u
+ [ redis-server = redis-server -a 0 = 0 ]
+ chown -R redis .
+ exec su-exec redis /usr/local/bin/docker-entrypoint.sh redis-server
+ [ redis-server != redis-server ]
+ [ redis-server != redis-server ]
+ id -u
+ [ redis-server = redis-server -a 100 = 0 ]
+ exec redis-server

What's the purpose of this? why not just
exec gosu redis "$@"

protected-mode breaks options (ports, volumes, etc) used with docker run.

I'm basically running into issue #60 in regards to options passed to docker run. Using this Dockerfile:

FROM redis:latest
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]

And this command:

docker run myredis -p 6379:6379

I get this error message:

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 2
>>> 'protected-mode "no" "-p" "6379:6379"'
Bad directive or wrong number of arguments

Can't open the log file: No such file or directory

my OS is : ubuntu:15.10
my docker-compose.yml

version: '2'
services:

  redis:
    image: redis
    ports:
      - "6379:6379"
    volumes:
      -  ~/dbdata/redis_conf/redis.conf:/usr/local/etc/redis/redis.conf
    volumes_from:
      -  redisdata
    environment:
      - REDIS_PASSWORD: 29c4181fb842b5f24a3103dbd2ba17accb1f7e3c8f19868955401ab921
    command: redis-server /usr/local/etc/redis/redis.conf

redisdata:
    image: redis
    volumes:
      - /home/keryhu/dbdata/redisdb:/data
    command: --break-redis

I copy the default redis.conf to the "~/dbdata/redis_conf/redis.conf" directory . And just modify the "requirepass" to "29c4181fb842b5f24a3103dbd2ba17accb1f7e3c8f19868955401ab921"

when i start the container ,i met an error -

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 103
>>> 'logfile /var/log/redis/redis-server.log'
Can't open the log file: No such file or directory

Can help me ?

No dockerfile is present for building redis container on Ubuntu for power8 architecture

I have ported Redis to power8 architecture (ppc64le) and have also dockerized it on Ubuntu. I want to contribute docker files back to Redis community.

I would like to know more about,

  1. What is the correct way/procedure to commit/submit dockerfile to repository?
  2. Is there any preference about naming convention of docker files and their place in repository?

Making the discontinued v2.8 alive again

Hi,

I've found that you have discontinued 2.8 and removed it from Dockerhub.

I was actually using the version and still need it, because Amazon's AWS Elasticache still only supports version 2.6 towards 2.8.
http://docs.aws.amazon.com/ja_jp/AmazonElastiCache/latest/UserGuide/SelectEngine.html

Since they don't support 3x, I still need Redis 2x on Docker to synchronize the capability and functionality between Elasticache and my local testing/development facility built on Docker.

Is it possible to turn 2.x back to alive?

Thanks

Getting a REDIS_PORT env set to tcp://IP:6379 instead of 6379

Hi,

When linking this container with php, I'm getting a REDIS_PORT env being set to tcp://IP:6379 instead of 6379, which just gives me error after error about tcp://172.17.0.7:tcp://172.17.0.7:6379 not existing, which of course it doesn't. Any way we can actually make it a port by default?

At the moment I have to run my containers with -e "REDIS_PORT=6379".

Cheers

Slim number of redis versions

We support too many versions. After the rebuilding, we should cut out most of them, but make sure to keep 2.8.6 (for AWS parity). Maybe a determine an end-of-life cycle for all Docker maintained Official Images (individually or collectively)?

Could not connect to Redis at :0: Name does not resolve

Following your guide, except using 3.0.6-alpine tag:

$ docker --version
Docker version 1.9.1, build a34a1d5
$ docker run --name some-redis -d redis:3.0.6-alpine
Unable to find image 'redis:3.0.6-alpine' locally
3.0.6-alpine: Pulling from library/redis
74e49af2062e: Pull complete 
958e6714f177: Pull complete 
776b8eb283a6: Pull complete 
336bc9fb8de7: Pull complete 
90b7147923ca: Pull complete 
adfc5d93ae48: Pull complete 
7bdd0b74ddc6: Pull complete 
71c4c2358b41: Pull complete 
a0d84122deb0: Pull complete 
05c71c6f1ada: Pull complete 
e0fadbcf4410: Pull complete 
306dcf0fb1f6: Pull complete 
3ff1739a8adc: Pull complete 
f12d20db9ba6: Pull complete 
c5e1fed9c065: Pull complete 
e8213f054a3c: Pull complete 
Digest: sha256:404a3444162e8c6f7c375a27746d7b75554e1a89436bd0dc7503af25ae50cdcb
Status: Downloaded newer image for redis:3.0.6-alpine
f080ae2190eddb626583618610cb6f437fdbe11a3d4c6829dbabbd3f91b36431
$ docker ps
CONTAINER ID        IMAGE                COMMAND                  CREATED             STATUS              PORTS               NAMES
f080ae2190ed        redis:3.0.6-alpine   "/entrypoint.sh redis"   2 seconds ago      Up 3 seconds       6379/tcp            some-redis
$ docker run -it --link some-redis:3.0.6-alpine --rm redis:3.0.6-alpine sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
Could not connect to Redis at :0: Name does not resolve
not connected>

Exposing it to my host works:

$ docker run --name some-redis -p 6379:6379/tcp -d redis:3.0.6-alpine
$ redis-cli -h $(ip -4 addr show docker0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')
172.17.0.1:6379> keys *
(empty list or set)

What am I doing wrong?

32 bit?

I was wondering if it would possible to get a 32bit image. I have been trying to get my own built, but I can't seem to get it working.

I added libc6-dev-i386 to $buildDeps and removed --no-install-recommends. I then changed make -C /usr/src/redis to make 32bit -C /usr/src/redis. Everything builds fine.

Go to run it. docker run redis. Get exec: "/entrypoint.sh": permission denied. Add RUN chmod +x entrypoint.sh

Now when I try and run it, I get error: exec failed: no such file or directory.

ls -la /usr/local/bin gives me:

total 8900
drwxrwsr-x  2 root staff    4096 Jul 15 19:02 .
drwxrwsr-x 13 root staff    4096 Jul 15 19:02 ..
-rwxr-xr-x  1 root staff 2141216 Jul 15 19:01 gosu
-rwxr-xr-x  1 root staff 1606733 Jul 15 19:02 redis-benchmark
-rwxr-xr-x  1 root staff   20055 Jul 15 19:02 redis-check-aof
-rwxr-xr-x  1 root staff   44651 Jul 15 19:02 redis-check-dump
-rwxr-xr-x  1 root staff 1711441 Jul 15 19:02 redis-cli
lrwxrwxrwx  1 root staff      12 Jul 15 19:02 redis-sentinel -> redis-server
-rwxr-xr-x  1 root staff 3574515 Jul 15 19:02 redis-server

Any idea what's going on? Am I taking the right approach?

Dockerfile: https://gist.github.com/b758f19378c719e3d42e

Entrypoint is the same

8mb /core file

Is there a reason that there is what looks like a 8mb core dump file in the redis:3.2.3-alpine docker image? It does look like it compresses down to 28kb so it probably doesn't take up much space, but it still seems odd to just be hanging around.

It looks like it has been hanging around since June 23rd, 2016:

Access: 2016-06-23 21:59:02.000000000 +0000
Modify: 2016-06-23 21:59:02.000000000 +0000

It does not appear to be on the redis:3.0.7-alpine image.

Permissions on mounted /data volume not correct

I'm running this instance with the /data directory mounted to the host machine with

-v /data/redis:/data

For some reason the permissions on the volume are not getting set properly despite the chown call in the Dockerfile, and therefore Redis pukes when trying to persist the DB.

Any ideas?

Move docker-entrypoint.sh to the root directory

I'm not sure what the convention is here but it would seem like the entrypoint script should live in the root directory judging from other official images.

xxxxxxxx_elasticsearch_1   /docker-entrypoint.sh elas
xxxxxxxx_neo4j_1           /docker-entrypoint.sh neo4j
xxxxxxxx_percona_1         /docker-entrypoint.sh mysqld
xxxxxxxx_redis_1           docker-entrypoint.sh redis

WARNING overcommit_memory is set to 0

When I start container, I see this in logs:

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

I want data to be persistent. Should I worry about it?

Establish provenance of gosu

In the Redis dockerfile, the checksum for the redis download is tested, but the gosu one isn't. I release this is code under your control, but it's not completely infeasible that someone could hack the repository.

I know this is a pain, especially if you change the gosu code, but I think it is important for official images.

*** FATAL CONFIG FILE ERROR *** passing as parameter redis.conf file

I am trying to create a Redis cluster node passing as parameter my own redis.conf file with the following configuration:

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

I am running the following command to create the cluster node, which seems to be correct according with the documentation:

docker run -v redis.conf:/usr/local/etc/redis/redis.conf --name node redis redis-server /usr/local/etc/redis/redis.conf

But I am getting the following error:

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 2
>>> 'protected-mode "no" "/usr/local/etc/redis/redis.conf"'
Bad directive or wrong number of arguments

If I create my own Dockerfile to add the configuration file inside, it works perfect. But this is not the solution that I pursuit due I need to create nodes with different port numbers.

If I remove the port number from my configuration file, then I create my custom image named "redis-cluster-node" and finally I run the following command to pass the port as parameter:

docker run --name node redis-cluster-node -p 7000

I get the following error:

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 2
>>> 'protected-mode "no" "-p" "7000"'
Bad directive or wrong number of arguments

My configuration file works fine with the original project when I create a cluster node, so I presume the problem is related with the docker image itself or maybe I am missing something.

Can you help me with this? Thanks in advance! ๐Ÿ˜ƒ

gpg recv-keys not working

In all your Dockerfiles, the command "gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4" fails for me with a timeout. This is because the default port used by gpg is blocked on my corporate firewall and instead I have to use port 80.

So the correct command which should work for everybody should be:
gpg --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-keys 0xB42F6819007F00F88E364FD4036A9C25BF357DD4

Please note the two changes:

  1. the keyserver address has been fully qualified with protocol and port, and
  2. the key ID has been preceeded with "0x" which is the correct syntax fot the keyserver being used.

Build issue with Docker 1.7.0

After a fresh Docker 1.7.0 update I'm unable to build that container again.
Downgrading to 1.6.2 fix the issue.

 ---> 817d89d94f8b                                                                                                                       
Removing intermediate container 773cafa6d808                                                                                             
Successfully built 817d89d94f8b                                                                                                          
Creating [...]_redis_1...                                                                                                             
Pulling image redis:2.8.17...                                                                                                            
Pulling repository redis                                                                                                                 
fb968d8e672d: Downloadcomplete                                                                                                          
511136ea3c5a: Download complete                                                                                                          
f10807909bc5: Download complete                                                                                                          
f6fab3b798be: Download complete                                                                                                          
1e6ac0ffed3b: Download complete                                                                                                          
62ff5003ac9a: Download complete                                                                                                          
c6e4fc6c4a10: Download complete                                                                                                          
bc88f03d080a: Download complete                                                                                                          
3fe604bd1976: Download complete                                                                                                          
cc3419fd55d1: Download complete                                                                                                          
008de626675b: Download complete                                                                                                          
6747e890aeeb: Download complete                                                                                                          
0c2b80a527d8: Download complete                                                                                                          
12bbff91b98d: Download complete                                                                                                          
66b0882c4722: Download complete                                                                                                          
48ef5f60adce: Download complete                                                                                                          
379ddf5b70f3: Download complete                                                                                                          
Status: Downloaded newer image for redis:2.8.11                                                                                          
Cannot start container 824a0ef6b968625f6d4e60863d0a69da9c1d28e5aeaba93abea872e6bdbdeba0: [8] System error: exec: "\"redis-server\"": exec
utable file not found in $PATH

3.2 Dockerfile breaks compatibility for custom config path

As a user of an older version of the docker container I'm used to have my configuration file in /data/redis.conf and expect to be able to continue using this behavior

Steps to reproduce

# docker run --rm -ti -v /data/redis:/data redis redis-server /data/redis.conf

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 2
>>> 'protected-mode "no" "/data/redis.conf"'
Bad directive or wrong number of arguments

Observed result

Parameter --protected-mode no is injected before the configuration file name and the container fails with above mentioned error

Expected result

Redis starts using /data/redis.conf as its config file

create a redis cluster in a single container, client connect failed due to container ip

i create a redis cluster with all nodes in one docker container, and expose all ports.
If i connect the cluster in the containers host, it can connect the container successful,
if i run: redis-cli -c -h [container host ip] -p 7000 on other host, I find that it try to connect the real ip of cluster node, that is the docker container's private ip(not the container host ip). so it fail always.

I'm not sure if this would helpful.

WARNING you have Transparent Huge Pages (THP) support enabled

When Redis starts I'm seeing the following two warnings, Is this something to be concerned about or something that should be corrected in the docker-library redis:2.8 image?

Server started, Redis version 2.8.23

WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

dump.rdb getting set to read-only

I seem to be having a recurring issue. Every few days my redis container starts throwing errors such as:

1:M 04 Feb 17:45:03.166 # Background saving error
1:M 04 Feb 17:45:09.085 * 1 changes in 3600 seconds. Saving...
1:M 04 Feb 17:45:09.085 * Background saving started by pid 1031
1031:C 04 Feb 17:45:09.086 # Failed opening .rdb for saving: Permission denied

Which is causing my clients to fail writes.

I have docker exec'd into the container and verified that the /data/dump.rdb file is read-only. I imagine this is causing those errors. I can't figure out why that file would be read-only.

I am running the container with no options other than container names and ports. I'm not mounting in any volumes or anything of the sort.

Anyone have any ideas?

Doesn't save on SIGTERM

According to http://redis.io/topics/signals Redis is supposed to do a save on SIGTERM:

If Redis is configured to persist on disk using RDB files, a synchronous (blocking) save is performed. Since the save is performed in a synchronous way no additional memory is used.

According to http://docs.docker.com/reference/commandline/cli/#stop Docker sends a SIGTERM followed by a SIGKILL after a period (10 second default).

The main process inside the container will receive SIGTERM, and after a grace period, SIGKILL

It seems to receive the SIGTERM and gracefully shutdown but it does so without a save.
Subsequent start of the container doesn't have the data.

$ docker run --name some-redis -d redis
4f9fd01b2ed8be449610c4210831b583c1c1f3db1e5560ed4c3921fee34f318d
$ docker run -it --link some-redis:redis --rm redis sh -c 'echo set foo bar | redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
OK
$ docker run -it --link some-redis:redis --rm redis sh -c 'echo get foo | redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
"bar"
$ docker stop some-redis
some-redis
$ docker logs some-redis  | tail -n6
[1] 25 Jul 15:25:58.611 # Server started, Redis version 2.8.12
[1] 25 Jul 15:25:58.611 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
[1] 25 Jul 15:25:58.611 * The server is now ready to accept connections on port 6379
[1 | signal handler] (1406301986) Received SIGTERM, scheduling shutdown...
[1] 25 Jul 15:26:26.770 # User requested shutdown...
[1] 25 Jul 15:26:26.770 # Redis is now ready to exit, bye bye...
$ docker start some-redis 
some-redis
$ docker run -it --link some-redis:redis --rm redis sh -c 'echo get foo | redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
(nil)

WARNING: /proc/sys/net/core/somaxconn is set to the lower value of 128.

How can I get rid of this warning?

WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

I am using:

docker-machine version 0.4.1 (e2c88d6)
Boot2Docker version 1.8.2, build master : aba6192 - Thu Sep 10 20:58:17 UTC 2015
Docker version 1.8.2, build 0a8c2e3

Image is HUGE

This image comes in at 812MB for me, which is much much much larger than I would expect for a redis image.

Valgrind seems to be the real culprit here. Is this a build dep for redis?
Adjusting the Dockerfile for optimizing size yields a 364.6 MB image:

FROM debian:jessie

# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added
RUN groupadd -r redis && useradd -r -g redis redis

ADD . /usr/src/redis
RUN apt-get update && apt-get install -y build-essential tcl valgrind && \
  make -C /usr/src/redis && \
  make -C /usr/src/redis test || true && \
  make -C /usr/src/redis install && \
  apt-get purge -y build-essential tcl valgrind && apt-get autoremove -y


#RUN make -C /usr/src/redis
#
## in initial testing, "make test" was failing for reasons that were very hard to track down (so for now, we run them, but don't worry about them failing)
#RUN make -C /usr/src/redis test || true
#
#RUN make -C /usr/src/redis install
RUN mkdir /data && chown redis:redis /data
VOLUME /data
WORKDIR /data

USER redis
EXPOSE 6379
CMD [ "redis-server" ]

Latest Redis:2.8 image returning 400 for v1 docker hub registry

docker pull redis:2.8 and 2.8.21 fails with 400 error code.

It breaks with docker 1.5.0:

# docker -v
Docker version 1.5.0, build a8a31ef

It works fine with docker 1.7.1

The output is below:

# docker pull redis:2.8.21
Pulling repository redis
8d79c535f2e4: Error pulling image (2.8.21) from redis, HTTP code 400
4c8cbfd2973e: Download complete
60c52dbe9d91: Download complete
a81e536d75d2: Download complete
b5385b7b49ae: Download complete
5eced7370894: Download complete
9b5f6b31f2b8: Download complete
ccd483713658: Download complete
2214f9d464dd: Download complete
c231af3d4fbe: Download complete
a055745f1b6d: Download complete
7b6598fb9b79: Download complete
f393252a4979: Download complete
04252c65d6ed: Download complete
cb5b2977ebc4: Download complete
cd896e1f93cc: Error pulling dependent layers
FATA[0014] Error pulling image (2.8.21) from redis, HTTP code 400

It works with an older tag:

# docker pull redis:2.8.19
Pulling repository redis
8c37ff647cf2: Download complete
21e4345e9035: Download complete
b3d362b23ec1: Download complete
29809ed33dfd: Download complete
b720af9a6508: Download complete
c215cb712b89: Download complete
8d9a45a71a91: Download complete
8f865a3e6e27: Download complete
4ca75464ac9d: Download complete
9275395c1849: Download complete
6015d1546fd1: Download complete
48ae217ccdf5: Download complete
fcd356f5a94f: Download complete
3028558fb807: Download complete
d03a093d96d7: Download complete
55e5e13936fa: Download complete
d42005b64d13: Download complete
Status: Downloaded newer image for redis:2.8.19

Any clue as to whats happening?

chown operation not permitted when running container with --user=xxxx

I am using Vagrant's docker provisioner to install a docker host on a development VM and then run the redis:3.2 image in a container.

When I was using vagrant 1.7.2 (which installed docker 1.9.1) and VirtualBox 4.3.x the following vagrantfile snippet worked:

    # according to the docker docs, this command is idempotent as long as the same driver is used
    dbs.vm.provision 'shell', inline: "docker volume create --driver local --name datastore"

    dbs.vm.provision "docker" do |docker|
      # run the redis container (Vagrant daemonizes and restarts by default, no need to add flags here)
      # use the datastore volume for storage and run as linux user id 1000 (works around filesystem permissions issues)
      docker.run "redis",
        image: "redis:3.2",
        args: "-v 'datastore:/data' -p '6379:6379' -u 1000",
        cmd: "redis-server --appendonly yes"
    end

Now that I have updated to VirtualBox 5.0.20, Vagrant 1.8.1 (which installs docker 1.11.2), I get the following error:

==> dbs: datastore
==> dbs: Running provisioner: docker...
==> dbs: Starting Docker containers...
==> dbs: -- Container: redis
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

          rm -f /var/lib/vagrant/cids/b840fc02d524045429941cc15f59e41cb7be6c52
          docker run --cidfile=/var/lib/vagrant/cids/b840fc02d524045429941cc15f59e41cb7be6c52 -d --name redis --restart=always -v 'datastore:/data' -p '6379:6379' -u 1000 redis:3.2 redis-server --appendonly yes

Stdout from the command:

Stderr from the command:

Unable to find image 'redis:3.2' locally
3.2: Pulling from library/redis
... snipped the boring layer downloading stuff ...
78fc0c16bb0c: Pull complete
Digest: sha256:69ce82b2ed29f117c2dadf537ef7bed741e851705239a20fe9616a97eb48281d
Status: Downloaded newer image for redis:3.2
docker: Error response from daemon: chown /var/lib/docker/volumes/datastore/_data: operation not permitted.
See 'docker run --help'.

I note that the docker-entrypoint.sh for 3.2 is what runs the chown command. Can you think of any reason why the container no longer has permissions to chown /var/lib/docker/volumes/datastore/_data just because I updated to a newer Vagrant/Docker combination?

EDIT: I have also tried to run these containers with --privileged=true but I get the same error.

can't use config file in cmd

try to use:
command: ["redis-server", "/data/redis.conf"]

the error in log is:

redis_1 | *** FATAL CONFIG FILE ERROR ***
redis_1 | Reading the configuration file, at line 2
redis_1 | >>> 'protected-mode "no" "/data/redis.conf"'
redis_1 | Bad directive or wrong number of arguments

Entrypoint error

I've run the following command on boot2docker:

docker run --name redtest -d redis -p 6379:6379

But it gives the following error:

/entrypoint.sh: line 9: exec: -p: invalid option
exec: usage: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]

Unable to run redis container

$ docker run redis --rm
/entrypoint.sh: line 9: exec: --: invalid option
exec: usage: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]

My environment: OSX Yosemite, I was using latest redis image: lastest

docker version
Client:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:10:10 UTC 2015
 OS/Arch:      darwin/amd64

Server:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:10:10 UTC 2015
 OS/Arch:      linux/amd64

docker-machine --version
docker-machine version 0.4.1 (e2c88d6)

Explicitly using 3.0 image:

docker run redis:3.0 --rm
Unable to find image 'redis:3.0' locally
3.0: Pulling from library/redis
ba249489d0b6: Already exists
19de96c112fc: Already exists
d990a769a35e: Already exists
8656a511ce9c: Already exists
f7022ac152fb: Already exists
8e84d9ce7554: Already exists
c9e5dd2a9302: Already exists
27b967cdd519: Already exists
3024bf5093a1: Already exists
e6a9eb403efb: Already exists
c3532a4c89bc: Already exists
35fc08946add: Already exists
d586de7d17cd: Already exists
1f677d77a8fa: Already exists
ed09b32b8ab1: Already exists
54647d88bc19: Already exists
2f2578ff984f: Already exists
library/redis:3.0: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:c21883de88919be8e902cc13ff0561c4358672ce9740cc50ab5135b27ca0be62
Status: Downloaded newer image for redis:3.0
/entrypoint.sh: line 9: exec: --: invalid option
exec: usage: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]

Connecting through localhost...

I am on osx and I'm trying to use this container by doing:

$ docker run --name redis -p 6379:6379 -d redis
$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
1af8a2abcae9        redis               "/entrypoint.sh redis"   3 minutes ago       Up 3 minutes        0.0.0.0:6379->6379/tcp   redis

Based on this it seems like the container is running properly, and the key being: 0.0.0.0:6379->6379/tcp

However when I attempt to connect to the server via node_redis with code like this:

var redis = require('redis');
var client = redis.createClient(); // localhost:6379
client.on('error', function (err) {
    console.log('Redis Error:', err); // errors here
});

I get this error:

Redis Error: { [Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED 127.0.0.1:6379]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect',
  address: '127.0.0.1',
  port: 6379 }

I've tried using some other clients, and they all do the same thing. Furthermore, trying to use the linking suggested in the documentation here, this same code when run in that container is also having this error.

What am I missing?

Can't pull 3.2.3

docker pull redis:3.2.3
Pulling repository docker.io/library/redis
Tag 3.2.3 not found in repository docker.io/library/redis

On the other hand, docker pull redis:3 gets me the images with Redis 3.2.2

A little description of entery-point.sh script

!/bin/bash

set -e
1- What is the purpose of "set -e" here.
if [ "$1" = 'redis-server' ]; then
chown -R redis .
exec gosu redis "$@"
2- What is the purpose of this command exec gosu redis "$@"
fi

exec "$@"

3- What is the Purpose of this command exec "$@" .

Given 3.0 Docker is not building the docker container

https://github.com/docker-library/redis/blob/master/3.0/Dockerfile

Downloaded above docker file and its not creating the container. Please find the container build result

RajRajen:3.0 rajrajen$ docker build --file=Dockerfile -t=ab:deb_redis .
Sending build context to Docker daemon 12.8 kB
Step 1 : FROM debian:jessie
jessie: Pulling from library/debian
5c90d4a2d1a8: Pull complete
Digest: sha256:8b1fc3a7a55c42e3445155b2f8f40c55de5f8bc8012992b26b570530c4bded9e
Status: Downloaded newer image for debian:jessie
---> 1b088884749b
Step 2 : RUN groupadd -r redis && useradd -r -g redis redis
---> Running in 312640592c21
---> c898bfcd9b95
Removing intermediate container 312640592c21
Step 3 : RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates wget && rm -rf /var/lib/apt/lists/*
---> Running in 9d2339300b1b
Get:1 http://security.debian.org jessie/updates InRelease [63.1 kB]
Ign http://httpredir.debian.org jessie InRelease
Get:2 http://httpredir.debian.org jessie-updates InRelease [142 kB]
Get:3 http://security.debian.org jessie/updates/main amd64 Packages [358 kB]
Get:4 http://httpredir.debian.org jessie Release.gpg [2373 B]
Get:5 http://httpredir.debian.org jessie Release [148 kB]
Get:6 http://httpredir.debian.org jessie-updates/main amd64 Packages [17.6 kB]
Get:7 http://httpredir.debian.org jessie/main amd64 Packages [9032 kB]
Fetched 9764 kB in 11s (826 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
The following extra packages will be installed:
libffi6 libgmp10 libgnutls-deb0-28 libhogweed2 libicu52 libidn11 libnettle4
libp11-kit0 libpsl0 libssl1.0.0 libtasn1-6 openssl
Suggested packages:
gnutls-bin
The following NEW packages will be installed:
ca-certificates libffi6 libgmp10 libgnutls-deb0-28 libhogweed2 libicu52
libidn11 libnettle4 libp11-kit0 libpsl0 libssl1.0.0 libtasn1-6 openssl wget
0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded.
Need to get 10.8 MB of archives.
After this operation, 38.9 MB of additional disk space will be used.
Get:1 http://httpredir.debian.org/debian/ jessie/main libssl1.0.0 amd64 1.0.1t-1+deb8u2 [1045 kB]
Get:2 http://httpredir.debian.org/debian/ jessie/main libnettle4 amd64 2.7.1-5+deb8u1 [176 kB]
Get:3 http://httpredir.debian.org/debian/ jessie/main libgmp10 amd64 2:6.0.0+dfsg-6 [253 kB]
Get:4 http://httpredir.debian.org/debian/ jessie/main libffi6 amd64 3.1-2+b2 [20.1 kB]
Get:5 http://httpredir.debian.org/debian/ jessie/main libhogweed2 amd64 2.7.1-5+deb8u1 [126 kB]
Get:6 http://httpredir.debian.org/debian/ jessie/main libtasn1-6 amd64 4.2-3+deb8u2 [49.0 kB]
Get:7 http://httpredir.debian.org/debian/ jessie/main libp11-kit0 amd64 0.20.7-1 [81.2 kB]
Get:8 http://httpredir.debian.org/debian/ jessie/main libgnutls-deb0-28 amd64 3.3.8-6+deb8u3 [694 kB]
Get:9 http://httpredir.debian.org/debian/ jessie/main wget amd64 1.16-1 [495 kB]
Get:10 http://httpredir.debian.org/debian/ jessie/main libidn11 amd64 1.29-1+deb8u1 [136 kB]
Get:11 http://httpredir.debian.org/debian/ jessie/main libicu52 amd64 52.1-8+deb8u3 [6784 kB]
Get:12 http://httpredir.debian.org/debian/ jessie/main ca-certificates all 20141019+deb8u1 [204 kB]
Get:13 http://httpredir.debian.org/debian/ jessie/main libpsl0 amd64 0.5.1-1 [41.6 kB]
Get:14 http://httpredir.debian.org/debian/ jessie/main openssl amd64 1.0.1t-1+deb8u2 [664 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 10.8 MB in 7s (1372 kB/s)
Selecting previously unselected package libssl1.0.0:amd64.
(Reading database ... 7548 files and directories currently installed.)
Preparing to unpack .../libssl1.0.0_1.0.1t-1+deb8u2_amd64.deb ...
Unpacking libssl1.0.0:amd64 (1.0.1t-1+deb8u2) ...
Selecting previously unselected package libgmp10:amd64.
Preparing to unpack .../libgmp10_2%3a6.0.0+dfsg-6_amd64.deb ...
Unpacking libgmp10:amd64 (2:6.0.0+dfsg-6) ...
Selecting previously unselected package libnettle4:amd64.
Preparing to unpack .../libnettle4_2.7.1-5+deb8u1_amd64.deb ...
Unpacking libnettle4:amd64 (2.7.1-5+deb8u1) ...
Selecting previously unselected package libhogweed2:amd64.
Preparing to unpack .../libhogweed2_2.7.1-5+deb8u1_amd64.deb ...
Unpacking libhogweed2:amd64 (2.7.1-5+deb8u1) ...
Selecting previously unselected package libffi6:amd64.
Preparing to unpack .../libffi6_3.1-2+b2_amd64.deb ...
Unpacking libffi6:amd64 (3.1-2+b2) ...
Selecting previously unselected package libp11-kit0:amd64.
Preparing to unpack .../libp11-kit0_0.20.7-1_amd64.deb ...
Unpacking libp11-kit0:amd64 (0.20.7-1) ...
Selecting previously unselected package libtasn1-6:amd64.
Preparing to unpack .../libtasn1-6_4.2-3+deb8u2_amd64.deb ...
Unpacking libtasn1-6:amd64 (4.2-3+deb8u2) ...
Selecting previously unselected package libgnutls-deb0-28:amd64.
Preparing to unpack .../libgnutls-deb0-28_3.3.8-6+deb8u3_amd64.deb ...
Unpacking libgnutls-deb0-28:amd64 (3.3.8-6+deb8u3) ...
Selecting previously unselected package libidn11:amd64.
Preparing to unpack .../libidn11_1.29-1+deb8u1_amd64.deb ...
Unpacking libidn11:amd64 (1.29-1+deb8u1) ...
Selecting previously unselected package libicu52:amd64.
Preparing to unpack .../libicu52_52.1-8+deb8u3_amd64.deb ...
Unpacking libicu52:amd64 (52.1-8+deb8u3) ...
Selecting previously unselected package libpsl0:amd64.
Preparing to unpack .../libpsl0_0.5.1-1_amd64.deb ...
Unpacking libpsl0:amd64 (0.5.1-1) ...
Selecting previously unselected package wget.
Preparing to unpack .../archives/wget_1.16-1_amd64.deb ...
Unpacking wget (1.16-1) ...
Selecting previously unselected package openssl.
Preparing to unpack .../openssl_1.0.1t-1+deb8u2_amd64.deb ...
Unpacking openssl (1.0.1t-1+deb8u2) ...
Selecting previously unselected package ca-certificates.
Preparing to unpack .../ca-certificates_20141019+deb8u1_all.deb ...
Unpacking ca-certificates (20141019+deb8u1) ...
Setting up libssl1.0.0:amd64 (1.0.1t-1+deb8u2) ...
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @inc (you may need to install the Term::ReadLine module) (@inc contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/x86_64-linux-gnu/perl5/5.20 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
debconf: falling back to frontend: Teletype
Setting up libgmp10:amd64 (2:6.0.0+dfsg-6) ...
Setting up libnettle4:amd64 (2.7.1-5+deb8u1) ...
Setting up libhogweed2:amd64 (2.7.1-5+deb8u1) ...
Setting up libffi6:amd64 (3.1-2+b2) ...
Setting up libp11-kit0:amd64 (0.20.7-1) ...
Setting up libtasn1-6:amd64 (4.2-3+deb8u2) ...
Setting up libgnutls-deb0-28:amd64 (3.3.8-6+deb8u3) ...
Setting up libidn11:amd64 (1.29-1+deb8u1) ...
Setting up libicu52:amd64 (52.1-8+deb8u3) ...
Setting up libpsl0:amd64 (0.5.1-1) ...
Setting up wget (1.16-1) ...
Setting up openssl (1.0.1t-1+deb8u2) ...
Setting up ca-certificates (20141019+deb8u1) ...
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @inc (you may need to install the Term::ReadLine module) (@inc contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/x86_64-linux-gnu/perl5/5.20 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl .) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
debconf: falling back to frontend: Teletype
Processing triggers for libc-bin (2.19-18+deb8u4) ...
Processing triggers for ca-certificates (20141019+deb8u1) ...
Updating certificates in /etc/ssl/certs... 174 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....done.
---> 967ec95a86db
Removing intermediate container 9d2339300b1b
Step 4 : ENV GOSU_VERSION 1.7
---> Running in 8c3a709e573e
---> 5945e211ca5a
Removing intermediate container 8c3a709e573e
Step 5 : RUN set -x && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)" && wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture).asc" && export GNUPGHOME="$(mktemp -d)" && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 && gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu && rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc && chmod +x /usr/local/bin/gosu && gosu nobody true
---> Running in c84c2262beb1

2016-06-19 02:36:28 (1.03 MB/s) - '/usr/local/bin/gosu' saved [2698808/2698808]

2016-06-19 02:36:29 (13.4 KB/s) - '/usr/local/bin/gosu.asc' saved [543/543]

  • mktemp -d
  • export GNUPGHOME=/tmp/tmp.d5PIa9Vfcj
  • gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4
    gpg: keyring /tmp/tmp.d5PIa9Vfcj/secring.gpg' created gpg: keyring/tmp/tmp.d5PIa9Vfcj/pubring.gpg' created
    gpg: requesting key BF357DD4 from hkp server ha.pool.sks-keyservers.net
    gpgkeys: key B42F6819007F00F88E364FD4036A9C25BF357DD4 can't be retrieved
    gpg: no valid OpenPGP data found.
    gpg: Total number processed: 0
    The command '/bin/sh -c set -x && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)" && wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture).asc" && export GNUPGHOME="$(mktemp -d)" && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 && gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu && rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc && chmod +x /usr/local/bin/gosu && gosu nobody true' returned a non-zero code: 2

Please let me know, if anything else, I need to do.

Thanks,
Raj

HTTP code 400 on docker pull redis

I'm receiving an error with HTTP code 400 when trying to pull the latest redis image. These errors started around 2015/09/11 13:02:10 UTC. The issue seems to be with image tags > 2.8.21 as I'm able to pull and run tag 2.8.21 with no problem.

See below for the output:

$ docker pull redis
Pulling repository redis
96352e92e972: Pulling image (3.0.2-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
4c73f715cfb8: Pulling image (2.8.22) from redis, endpoint: https://registry-1.docker.io/v1/ 
46cacea298d2: Pulling image (2.8.22-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
fb968d8e672d: Pulling image (2.8.11) from redis, endpoint: https://registry-1.docker.io/v1/ 
acf48e3e78df: Pulling image (2.8.8) from redis, endpoint: https://registry-1.docker.io/v1/ 
dd62d42a3800: Pulling image (3.0.4) from redis, endpoint: https://registry-1.docker.io/v1/ 
7c66279ca4e2: Pulling image (2.8.16) from redis, endpoint: https://registry-1.docker.io/v1/ 
79c604d8c07e: Pulling image (3.0.4-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
b435bed44cc3: Pulling dependent layers 
7c66279ca4e2: Pulling dependent layers 
a6df6049b6dc: Pulling image (3.0.2) from redis, endpoint: https://registry-1.docker.io/v1/ 
cb7d00c0742c: Pulling image (2) from redis, endpoint: https://registry-1.docker.io/v1/ 
dad71287aacb: Pulling image (2.8.17) from redis, endpoint: https://registry-1.docker.io/v1/ 
06a1f75304ba: Pulling image (3.0.0) from redis, endpoint: https://registry-1.docker.io/v1/ 
9554c310cfeb: Pulling image (2.8.10) from redis, endpoint: https://registry-1.docker.io/v1/ 
72b872386b2a: Pulling image (32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
1a721decd792: Pulling image (2.8.21) from redis, endpoint: https://registry-1.docker.io/v1/ 
8c37ff647cf2: Pulling image (2.8.19) from redis, endpoint: https://registry-1.docker.io/v1/ 
6064dc06cc6f: Pulling image (2.8.6) from redis, endpoint: https://registry-1.docker.io/v1/ 
e81a0e32483b: Pulling image (2.6.17-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
dbbd133bdac6: Pulling image (2.8.20) from redis, endpoint: https://registry-1.docker.io/v1/ 
9a809f4657ff: Pulling image (2.8.14) from redis, endpoint: https://registry-1.docker.io/v1/ 
5664eb06cb13: Pulling image (3.0.3-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
97bd235cb020: Pulling image (2.8-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
2f2578ff984f: Pulling image (3.0) from redis, endpoint: https://registry-1.docker.io/v1/ 
06a1f75304ba: Pulling dependent layers 
7f0d9594c72d: Pulling image (2.8.21-32bit) from redis, endpoint: https://registry-1.docker.io/v1/ 
c1ecf7e69b16: Pulling image (2.8.18) from redis, endpoint: https://registry-1.docker.io/v1/ 
818c43182340: Pulling image (2.8.7) from redis, endpoint: https://registry-1.docker.io/v1/ 
a2f8e5952444: Pulling image (2.8.12) from redis, endpoint: https://registry-1.docker.io/v1/ 
e938c5d0ff85: Pulling image (2.8.9) from redis, endpoint: https://registry-1.docker.io/v1/ 
9216d5a4eec8: Download complete 
4b7672067154: Pulling image (3.0.1) from redis, endpoint: https://registry-1.docker.io/v1/ 
9d3ceacde91b: Download complete 
bbe78c1a5a53: Download complete 
9bce9474876b: Download complete 
047a294381b2: Download complete 
2658b5be63c6: Download complete 
7bf6d72c51dd: Download complete 
6d6a6cf52058: Download complete 
aa2530999d9d: Download complete 
1e665a029cd6: Pulling dependent layers 
6f363001266d: Download complete 
836d921b3cd8: Download complete 
2a7c655ad485: Download complete 
24968be6ba8d: Download complete 
61ccddfbf92f: Download complete 
e352ded77489: Download complete 
43d77a7c6a43: Download complete 
ba249489d0b6: Download complete 
19de96c112fc: Download complete 
fb968d8e672d: Pulling dependent layers 
8656a511ce9c: Download complete 
f7022ac152fb: Download complete 
8e84d9ce7554: Pulling metadata 
511136ea3c5a: Download complete 
f10807909bc5: Download complete 
f6fab3b798be: Download complete 
1e6ac0ffed3b: Download complete 
62ff5003ac9a: Download complete 
c6e4fc6c4a10: Download complete 
4b7672067154: Pulling dependent layers 
b5a05eb09133: Download complete 
20884b718364: Download complete 
c1421824308a: Download complete 
be42b2f852f8: Download complete 
f89a4d45627f: Download complete 
59c90e481683: Download complete 
58cdac6ce0d7: Download complete 
a08d6920de7e: Download complete 
a84adc68d833: Download complete 
21e4345e9035: Download complete 
b3d362b23ec1: Download complete 
29809ed33dfd: Download complete 
b720af9a6508: Download complete 
c215cb712b89: Download complete 
8d9a45a71a91: Download complete 
c6e4fc6c4a10: Download complete 
1c255a1b1254: Download complete 
7ebc2ece510e: Download complete 
4454da7c7dbc: Download complete 
3a8cd27bb3d5: Download complete 
d315f0a01142: Download complete 
e501d0146d1d: Download complete 
40980abbab9f: Download complete 
6755f61be70b: Download complete 
54ca92b7c8d7: Download complete 
c6e4fc6c4a10: Download complete 
4b4573c41ecd: Download complete 
3b1c6e568266: Download complete 
e3983b6fa8c5: Download complete 
6cffe84bcb34: Download complete 
a69b1a439ee8: Download complete 
2ffd64780219: Download complete 
cb20741bc0b3: Download complete 
b8cc527a768e: Download complete 
00b18747c916: Download complete 
a6df6049b6dc: Pulling dependent layers 
3fe604bd1976: Download complete 
cc3419fd55d1: Download complete 
008de626675b: Download complete 
6747e890aeeb: Download complete 
0c2b80a527d8: Download complete 
12bbff91b98d: Download complete 
66b0882c4722: Download complete 
48ef5f60adce: Download complete 
379ddf5b70f3: Download complete 
7a3e804ed6c0: Download complete 
b96d1548a24e: Download complete 
5ba9a5b9710f: Download complete 
37f07aacbfe5: Download complete 
ec7f3a6b5dc6: Download complete 
499b313c4d4e: Download complete 
c6e4fc6c4a10: Download complete 
0daf71066555: Download complete 
1f86439b265d: Download complete 
9e6288fa06c0: Download complete 
3c083702089f: Download complete 
71cc4c7123fc: Download complete 
91e5e3734476: Download complete 
8d7fb9bd09ab: Download complete 
e6b7cf8bf1b1: Download complete 
96182c1bd121: Download complete 
62ff5003ac9a: Download complete 
8f0cbd4351ba: Download complete 
c87d1e4e1099: Download complete 
87c135bf4997: Download complete 
452932666d58: Download complete 
0339303d44f9: Download complete 
848384d472a3: Download complete 
e464daa78d27: Download complete 
996cbeca8e1e: Download complete 
a5cdb6598216: Download complete 
877e94e68682: Download complete 
8798d8e5e8d0: Download complete 
96352e92e972: Pulling dependent layers 
3bae7bcae945: Download complete 
443b59cef095: Download complete 
9df3dfb89628: Download complete 
36640b392c36: Download complete 
1c42d5571324: Download complete 
cc9b7ff66489: Download complete 
93710de6fa7b: Download complete 
4c8cbfd2973e: Download complete 
60c52dbe9d91: Download complete 
a81e536d75d2: Download complete 
b5385b7b49ae: Download complete 
5eced7370894: Download complete 
8d9a45a71a91: Download complete 
a04c61510805: Download complete 
141743e5b9e7: Download complete 
22a9933bda83: Download complete 
4853f3bbbf9e: Download complete 
4a3db294027e: Download complete 
ec8ae776f3e0: Download complete 
f34eedb86304: Download complete 
e54776d91563: Download complete 
8a5e386fb757: Download complete 
c6e4fc6c4a10: Download complete 
2dae7f582ca4: Download complete 
b3b0777328e2: Download complete 
88cac0a914ba: Download complete 
d86521a4a97b: Download complete 
8dac4b1844f8: Download complete 
08bff6b3755d: Download complete 
4bba9dd1c29f: Download complete 
cce18bd5d1ba: Download complete 
ed63b54150ef: Download complete 
62ff5003ac9a: Download complete 
e49d349e8a75: Download complete 
61213f5a1710: Download complete 
1224a21102d6: Download complete 
c6e112c19412: Download complete 
7d2c1e0aecf8: Download complete 
ff39eeaeb65a: Download complete 
2854f8d9f233: Download complete 
a7f162e686d8: Download complete 
1a4e6a91ed17: Download complete 
c6e4fc6c4a10: Download complete 
41b458fa48f0: Download complete 
15c3639f2b59: Download complete 
de9d93f2b9cc: Download complete 
c3d6311ed824: Download complete 
79fe58364f85: Download complete 
c69fc3e986c7: Download complete 
545daf89ae86: Download complete 
3248bf88d12f: Download complete 
12309b557706: Download complete 
c6e4fc6c4a10: Download complete 
8e6c8f6fffac: Download complete 
1158d55fdf61: Download complete 
a0d20f74f5ae: Download complete 
92c797ca89b2: Download complete 
6438372d2184: Download complete 
8f865a3e6e27: Download complete 
4ca75464ac9d: Download complete 
9275395c1849: Download complete 
6015d1546fd1: Download complete 
9bce9474876b: Download complete 
fcd356f5a94f: Download complete 
3028558fb807: Download complete 
d03a093d96d7: Download complete 
55e5e13936fa: Download complete 
d42005b64d13: Download complete 
e3cbc486c376: Download complete 
873ad4d7c803: Download complete 
907611bb296c: Download complete 
676e48250630: Download complete 
ae144ff63901: Download complete 
5cc1493f79a4: Download complete 
74e1d0e95ab5: Download complete 
c6e4fc6c4a10: Download complete 
4c79cc1320a4: Download complete 
172c68a07aa6: Download complete 
02d63ce2eeac: Download complete 
0f73add83a83: Download complete 
5de30f1e6e63: Download complete 
18db3678c8fb: Download complete 
ea02b08f4621: Download complete 
2a2cf199823c: Download complete 
a8d44db8d491: Download complete 
c6e4fc6c4a10: Download complete 
72d5594af48c: Download complete 
6c7c187e8183: Download complete 
7407800c51a5: Download complete 
c4e3fff7419d: Download complete 
848f406892bf: Download complete 
550c30dfe0d2: Download complete 
8f002adf8a96: Download complete 
8472547dce12: Download complete 
e18becbe3cb6: Download complete 
499b313c4d4e: Download complete 
f5d4538b5a47: Download complete 
924ee6e6b63b: Download complete 
b741deeb330a: Download complete 
920803ad413f: Download complete 
47b902bf45da: Download complete 
ffac2e88eca3: Download complete 
e6411cf60773: Download complete 
8d21947c9dc0: Download complete 
83f485f894c0: Download complete 
9bce9474876b: Download complete 
afc36d845b5c: Download complete 
091761453c68: Download complete 
fdb0ce7db6cd: Download complete 
186f4e272df5: Download complete 
fb9c6743c494: Download complete 
fa4116b60697: Download complete 
c9ec5fc6d6c0: Download complete 
e5e5402f43a2: Download complete 
814e86dd8361: Download complete 
7bf6d72c51dd: Download complete 
b73a2d27e8b8: Download complete 
54ac8bd7dc64: Download complete 
d2c71e2ce596: Download complete 
c24ad6c8b1a9: Download complete 
ddb28103dca0: Download complete 
4a4a3df50834: Download complete 
1485ab4183ce: Download complete 
85e08e282e21: Download complete 
18472546a3a4: Download complete 
d990a769a35e: Download complete 
f7bf86794f90: Download complete 
a514dcd819a2: Download complete 
6e56c33747a8: Download complete 
1c7ed864733c: Download complete 
16c029496662: Download complete 
543ee2b8d3f0: Download complete 
89c01536dc13: Download complete 
2c7c71517239: Download complete 
d344f1d2b9ed: Download complete 
6d87ac6cfa21: Download complete 
939446704f75: Download complete 
67b2c7d10139: Download complete 
d990a769a35e: Download complete 
c881ed50eeb8: Download complete 
6d4d40f86e90: Download complete 
95c50e2a865a: Download complete 
6f48689bd20e: Download complete 
5a4de59226f9: Download complete 
6d790babd670: Download complete 
e42462c0ce11: Download complete 
2b579ce4d1c3: Download complete 
07513c0be85b: Download complete 
d990a769a35e: Download complete 
96d5fcdbe623: Download complete 
15a23cef4a6f: Download complete 
9ee1f762a04e: Download complete 
3a581ab0ba91: Download complete 
602f1ba02ef4: Download complete 
1dddf040810f: Download complete 
8519e38d9141: Download complete 
c52ee68c59b7: Download complete 
0a4f2c076444: Download complete 
d990a769a35e: Download complete 
13c49f539797: Download complete 
d5be879558f4: Download complete 
b2508f29bec6: Download complete 
d60d207d76b3: Download complete 
6846105605cc: Download complete 
87b88b774507: Download complete 
fb03d161db14: Download complete 
2da1436f270c: Download complete 
3d78ebcf7326: Download complete 
d990a769a35e: Download complete 
917499e60e0b: Download complete 
1e0f123a26af: Download complete 
3332c755fad8: Download complete 
2eb8550e3970: Download complete 
a0ac81551599: Download complete 
4e7b9dc3fccc: Download complete 
99ab7287421a: Download complete 
22c143ffbb0b: Download complete 
399700c6183f: Download complete 
4c73f715cfb8: Error pulling image (2.8.22) from redis, HTTP code 400 
338c85cc6181: Download complete 
23ff241d03bc: Download complete 
27cf1d411230: Download complete 
f2b2b0119c4b: Download complete 
672336e7a5f6: Download complete 
db69750dae05: Download complete 
67dfd414f156: Download complete 
b01004024650: Download complete 
9a60ac5fd6d8: Download complete 
ddbd1e5a1c95: Download complete 
8e49e98503c5: Download complete 
fd19a43b60c2: Download complete 
cdff4bddb0dc: Download complete 
ff4619bef4ef: Download complete 
35f669455a38: Download complete 
6eda95f8d708: Download complete 
dfb2b5689398: Download complete 
b667c35d3f05: Download complete 
35b90a815126: Download complete 
eb9348b1cc6a: Download complete 
87215bcf0982: Download complete 
534668da8b30: Download complete 
fee5223bcc16: Download complete 
279bc14f17ec: Download complete 
816fb7847903: Download complete 
4e5d8b802f98: Download complete 
805fc95e34d4: Download complete 
fd7aa695b075: Download complete 
a526bc613d9e: Download complete 
7d5c67d9dc78: Download complete 
09da813cad81: Download complete 
dbbfaec89494: Download complete 
a36cd994c46c: Download complete 
92af2becee4d: Download complete 
b039b59a5938: Download complete 
a040b9189304: Download complete 
2f46b86d04a2: Download complete 
0b96c0d85d2c: Download complete 
cd5dee52a9ed: Download complete 
e49fdc36320c: Download complete 
2972be598fae: Download complete 
ce13818df63d: Download complete 
9a56736f9cd9: Download complete 
6ef13147ad4e: Download complete 
c039bb31d28a: Download complete 
2015/09/11 19:56:23 Error pulling image (2.8.22) from redis, HTTP code 400

Disable Transparent Huge Pages (THP) in docker machine

We probably need to disable Transparent Huge Pages (THP) inside the docker machine this might cause latency and memory usage issues with Redis.
To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'

Please provide a 2.8.6 tag

2.8.6 is a little outdated, yes, but it's the latest version provided by AWS ElastiCache, so it would be helpful to have available for the sake of development/production parity.

P.S. I tried to make a PR out of this, but I can't seem to propose that you pull something into a new branch. Here's the relevant commit, though: 1d4d9e7

Thanks!

Redis container not starting

Getting "Creating Server TCP listening socket *:6379: unable to bind socket"
OS UnRAID 6.1.9 , Docker ver1.7.1

Set password and other options via ENV variable

It would be awesome if it would be possible to set the Password via an ENV variable. Is this planned any time soon or maybe even already possible?

Of course it would even more awesome when we could set other parameters as well ๐Ÿ‘

custom redis.conf

The current idea for dealing with custom config is having the user make the following:

FROM redis
ADD redis.conf /data/
CMD [ "redis-server", "/data/redis.conf" ]

If we are encouraging the user to put the config into the /data volume, it would be better to make an entrypoint that checks for the custom conf file and puts in into the launch args. That way a user only has to ADD the file to a data container or put it in a bind mounted volume and run it with docker run --volumes-from datacontainer --name myredis redis. There would be no need for the user to have a Dockerfile for the redis container.

Tag 3.2 doesn't run with `--protected-mode no` with persistent storage or other args

Expected behavior:
Redis runs in docker container in unprotected mode.

Actual behavior:
Starting the container with redis-server --appendonly yes (or probably any other explicit arguments) causes redis to start in protected mode.

Details:
When running the redis docker image from tag 3.2 with docker run --name token-redis -p ${MY_PORT}:6379 -d redis:3.2 redis-server --appendonly yes the following error is produced.

Error: DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients. In this mode connections are only accepted from the loopback interface. If you want to connect from external computers to Redis you may adopt one of the following solutions: 1) Just disable protected mode sending the command 'CONFIG SET protected-mode no' from the loopback interface by connecting to Redis from the same host the server is running, however MAKE SURE Redis is not publicly accessible from internet if you do so. Use CONFIG REWRITE to make this change permanent. 2) Alternatively you can just disable the protected mode by editing the Redis configuration file, and setting the protected mode option to 'no', and then restarting the server. 3) If you started the server manually just for testing, restart it with the '--protected-mode no' option. 4) Setup a bind address or an authentication password. NOTE: You only need to do one of the above things in order for the server to start accepting connections from the outside. channel: [id: 0x8d7ec4dc, /192.168.99.1:52640 => /192.168.99.101:6379] data: null

The explicit arguments override the CMD in the dockerfile which disables protected mode.

Suggestion:
If the intention is to always disable protected mode (makes sense) then move --protected-mode no to docker-entrypoint.sh so that it always runs, even with over-ridden CMD.
If the intention is to allow the container to be run with protected mode, then update the docs on docker hub (specifically under the header start with persistent storage) to indicate that --protected-mode no also needs to be provided.

Use --userns-remap ?

Hello,

I was wondering if there is any reason to not use --userns-remap available since docker 1.10 ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.