хотите запустить redis-сервер в фоновом режиме без остановок

Я скачал файл redis-2.6.16.tar.gz и успешно установил. После установки я запускаю src/redis-server, он работает нормально.

Но я не хочу вручную запускать src/redis-server каждый раз, скорее я хочу, чтобы redis-сервер постоянно работал как фоновый процесс.

До сих пор после установки я выполнил следующие задачи:

1. vim redis.conf и я изменил на

# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
  daemonize yes

Но тот же результат я нашел. Какую ошибку я сделал?

После запуска Redis в фоновом режиме. Я запущу juggernaut также как фоновый процесс с помощью следующей команды.

nohup node server.js

Но я не могу заставить Redis работать в фоновом режиме. Пожалуйста, предоставьте какое-нибудь решение.


person siv rj    schedule 14.06.2014    source источник
comment
Какая ОС? После sudo apt-get install redis-server сервер работает, как и следовало ожидать.   -  person Dirk Eddelbuettel    schedule 14.06.2014
comment
Это ОС Ubuntu, хорошо, я проверю эту команду.   -  person siv rj    schedule 14.06.2014
comment
Здесь тоже. Так почему же вы не установили пакет и не покончили с этим?   -  person Dirk Eddelbuettel    schedule 14.06.2014
comment
Поскольку Redis уже установлен для установки с помощью apt-get, мне нужно правильно удалить старый, а с пакетом, который я установил несколько месяцев назад, он работал. Так.   -  person siv rj    schedule 14.06.2014
comment
Большое спасибо, чувак, ты сэкономил мое время. С сегодняшнего дня я никогда не буду использовать пакет для установки Redis.   -  person siv rj    schedule 14.06.2014


Ответы (4)


Начиная с Redis 2.6, параметры конфигурации Redis можно передавать напрямую с помощью командной строки. Это очень полезно для целей тестирования.

redis-server --daemonize yes

Проверяем запущен процесс или нет:

ps aux | grep redis-server
person Sagar Ranglani    schedule 24.10.2015
comment
Спасибо за ответ, после этого, чтобы увидеть, работает ли он на фоне, вы можете просто использовать: redis-cli ping - person Aronis Mariano; 13.11.2015
comment
@AronisMariano и PONG за ответ :) - person Chemical Programmer; 20.11.2015
comment
И просто добавьте alias redis-server='redis-server --daemonize yes' к вашему ~/.bash_profile, тогда вы будете получать демонизацию каждый раз, когда вы вводите redis-server в свою командную строку. - person Benyi; 03.05.2017
comment
Хотелось бы, чтобы этот флаг был в --help документации. Это помогло мне загрузить это прямо из python, используя подпроцесс: subprocess.Popen(['redis-server', '--daemonize', 'yes']) - person Aneuway; 02.11.2018
comment
Это помогло мне решить производственную ошибку за считанные секунды! - person Stefano Groenland; 27.09.2019

Я думаю, что лучший способ - использовать конфигурационный файл Redis:

# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize yes

Установите daemonize в yes в файле конфигурации. Скажите, что файл ~/.redis/redis.conf, затем просто запустите

$ redis-server ~/.redis/redis.conf

И это просто работает.

person laike9m    schedule 06.10.2016

Или вы можете просто запустить его как src/redis-server redis.conf&

person Chhavi Gangwal    schedule 16.06.2014
comment
Спасибо, я попробую, пока проблема решена. - person siv rj; 16.06.2014
comment
Вы также можете передавать значения конфигурации в командной строке, см. документацию по настройке Redis: redis.io/topics/config Для демонизации в командной строке: redis-server --daemonize yes - person chnrxn; 09.01.2015
comment
Дополнительная информация о фоновых заданиях: digitalocean.com/community/tutorials/ - person TomFuertes; 29.05.2019

Для окон:

Шаг 1. Установите Redis как службу

redis-server --server-install 

Шаг 2. Запустите фон

redis-server --server-start 
person Huy Do Quoc    schedule 25.03.2020