diff --git a/package/redis/redis.mk b/package/redis/redis.mk index 8537fb2bd2..ef51972df8 100644 --- a/package/redis/redis.mk +++ b/package/redis/redis.mk @@ -35,4 +35,12 @@ define REDIS_INSTALL_INIT_SYSV $(TARGET_DIR)/etc/init.d/S50redis endef +define REDIS_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/redis/redis.service \ + $(TARGET_DIR)/usr/lib/systemd/system/redis.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/redis.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/redis.service +endef + $(eval $(generic-package)) diff --git a/package/redis/redis.service b/package/redis/redis.service new file mode 100644 index 0000000000..0a8162b8ab --- /dev/null +++ b/package/redis/redis.service @@ -0,0 +1,22 @@ +[Unit] +Description=Advanced key-value store +After=network.target + +[Service] +Type=simple +User=redis +Group=redis +ExecStart=/usr/bin/redis-server /etc/redis.conf +ExecStop=/usr/bin/redis-cli shutdown +CapabilityBoundingSet= +PrivateTmp=true +PrivateDevices=true +ProtectSystem=full +ProtectHome=true +NoNewPrivileges=true +RuntimeDirectory=redis +RuntimeDirectoryMode=755 +LimitNOFILE=10032 + +[Install] +WantedBy=multi-user.target