Запустите контейнер Redis Docker из Dockerfile с аутентификацией - PullRequest
0 голосов
/ 24 декабря 2018

Я использую официальное изображение Redis Docker.Мне нужна аутентификация по паролю, поэтому я раскомментировал специальный блок

# requirepass foobared

, поэтому, когда я запускаю команду docker run -v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf --name myredis redis redis-server /usr/local/etc/redis/redis.conf, redis запрашивает у меня пароль.

Но мне нужно создать докеризображение из Dockerfile.Вот мой Dockerfile:

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

Redis не спрашивает меня пароль.Как создать Dockerfile, чтобы иметь AUTH?

1 Ответ

0 голосов
/ 24 декабря 2018

Пропустить имя целевого файла в команде COPY:

COPY redis.conf /usr/local/etc/redis/

Предполагается, что целью является путь, а не имя файла:

Абсолютное значение destпуть или путь относительно WORKDIR, в который будет скопирован источник внутри контейнера назначения.

Насколько я понимаю из ваших комментариев, вы пытаетесь запустить контейнер redis вместотвой собственный!Это ошибка, вам нужно использовать свой.

Допустим, если вы строите его с помощью команды:

docker build -t my-redis .

Затем вы запускаете его с чем-то вроде

docker run -d -p 6379:6379 -v /data:/data --name "redis-elk" my-redis redis-server --appendonly yes
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...