Skip to content

Instantly share code, notes, and snippets.

@peeyush113
Last active April 4, 2022 07:05
Show Gist options
  • Select an option

  • Save peeyush113/d0a9e9d4892799c12c6c73b4e174f6c0 to your computer and use it in GitHub Desktop.

Select an option

Save peeyush113/d0a9e9d4892799c12c6c73b4e174f6c0 to your computer and use it in GitHub Desktop.
script to crerate a new service to run redis on different porn on same ubuntu machine
#!/bin/bash
read -p "Enter the port: " port
install -o redis -g redis -d /var/lib/redis-$port
cp -p /etc/redis/redis.conf /etc/redis/redis-$port.conf
config_file=/etc/redis/redis-$port.conf
sed -i "s|port 6379|port $port|g" $config_file
sed -i "s|pidfile /run/redis/redis-server.pid|pidfile /run/redis-$port/redis-server-$port.pid|g" $config_file
sed -i "s|ogfile /var/log/redis/redis-server.log|ogfile /var/log/redis/redis-server-$port.log|g" $config_file
sed -i "s|dir /var/lib/redis|dir /var/lib/redis-$port|g" $config_file
cp /lib/systemd/system/redis-server.service /lib/systemd/system/redis-server-$port.service
service_file=/lib/systemd/system/redis-server-$port.service
sed -i "s|ExecStart=/usr/bin/redis-server /etc/redis/redis.conf|ExecStart=/usr/bin/redis-server /etc/redis/redis-$port.conf|g" $service_file
sed -i "s|PIDFile=/run/redis/redis-server.pid|PIDFile=/run/redis-$port/redis-server-$port.pid|g" $service_file
sed -i "s|RuntimeDirectory=redis|RuntimeDirectory=redis-$port|g" $service_file
sed -i "s|ReadWriteDirectories=-/run/redis|ReadWriteDirectories=-/run/redis-$port|g" $service_file
sed -i "s|ReadWriteDirectories=-/var/lib/redis|ReadWriteDirectories=-/var/lib/redis-$port|g" $service_file
sed -i "s|Alias=redis.service|Alias=redis-$port.service|g" $service_file
systemctl enable redis-server-$port.service
systemctl start redis-server-$port.service
ps aux |grep redis
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment