<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های Keyvan Eslamian</title><link>https://virgool.ir/feed/@keyvaneslamian</link><description>کیوان اسلامیان هستم متخصص DevOps چهار ساله توی این زمینه فعالیت دارم، اینجا هستم که‌ تجربیاتم رو در اخیتار دیگران قرار بدهم و از‌ تجربیات دیگران بهره ببرم✌</description><language>fa</language><pubDate>2026-11-11 15:45:11</pubDate><image><url>https://files.virgool.ir/upload/users/250454/avatar/kS46H1.png</url><title>Keyvan Eslamian</title><link>https://virgool.ir/@keyvaneslamian</link></image><item><title>کامپایل Redis بروی CentOS 7</title><link>https://virgool.ir/@keyvaneslamian/کامپایل-redis-بروی-centos-7-jm5zna6xrdxi</link><description>سلام، در این آموزش سعی دارم کامپایل Redis نسخه 5.0.0 را بروی یک سرور CentOS 7 که دسترسی به اینترنت ندارد را در اختیارتون بزارم. امیدوارم به عنوان اولین مطلب در وب سایت خوبه ویرگول برای علاقمندان در حوزه DevOps و Development مفید باشه :)برخی اوقات شاهد این هستیم که دسترسی اینترنت بخاطر یکسری مسائل از سرور گرفته می شود و از شانس خوب ما پکیج مورد نیازمون روی local repository وجود ندارد و از این رو یکی از راه های باقیمونده نصب پکیج مورد نظرمون به صورت دستی هست که در این مقاله به کامپایل Redis به صورت step by step اشاره میکنم.مرحله 1) نصب ابزارهای کامپایل در centos توسط کامند زیر:yum install gcc make wget tclاگر پکیج های بالا بروی سرور شما نصب بود می تونید مرحله 1 را نادیده بگیرید.مرحله 2) وارد مسیر زیر می شویم:cd /usr/local/srcسورس فایل Redis را به مسیر بالا انتقال می دهیم و آن را از حالت فشرده با کامند زیر خارج می کنیم:tar xf redis-5.0.0.tar.gzسپس وارد دایرکتوری که از حالت فشرده جارج شده می رویم و دستورات زیر را اجرا می کنیم:cd  redis-5.0.0makemake testmake installمرحله 3) ساخت کاربر و گروه redis:groupadd redisadduser --system -g redis --no-create-home redisپس از ساختن کاربر و گروه، دایرکتوری redis را در مسیر زیر ایجاد می کنیم:mkdir  -p /var/lib/redisمالکیت دایرکتوری ساخته شده را توسط کامند زیر به redis تخصیص می دهیم:chown redis: /var/lib/redisسپس سطح دسترسی آن را توسط کامند زیر به 770 تغییر می دهیم:chmod 770 /var/lib/redisمرحله 4) ساخت کانفیگ Redis:مراحل نصب به اتمام رسیده و در این مرحله دایرکتوری و فایل کانفیگ Redis را توسط دستورات زیر ایجاد می کنیم:mkdir /etc/redisانتقال فایل کانفیگ به مسیر اصلی:cp /usr/local/src/redis-5.0.0/redis.conf  /etc/redis/در نهایت فایل کانفیگ را با ویرایشگر دلخواه(vi , vim , nano) باز می کنیم:vi /etc/redis/redis.confدر فایل باز شده supervised را سرچ می کنیم و عبارت “systemd” جایزگین عبارت no می کنیم:# If you run Redis from upstart or systemd, Redis can interact with your# supervision tree. Options:#   supervised no      - no supervision interaction#   supervised upstart - signal upstart by putting Redis into SIGSTOP mode#   supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET#   supervised auto    - detect upstart or systemd method based on#                        UPSTART_JOB or NOTIFY_SOCKET environment variables# Note: these supervision methods only signal &#34;process is ready.&#34;#       They do not enable continuous liveness pings back to your supervisor.supervised systemdو سپس عبارت dir را در فایل سرچ می کنیم و مسیر /var/lib/redis را مقابل آن اضافه می کنیم:# The working directory.## The DB will be written inside this directory, with the filename specified# above using the &#39;dbfilename&#39; configuration directive.## The Append Only File will also be created inside this directory.## Note that you must specify a directory here, not a file name.dir /var/lib/redisفایل را دخیره می کنیم  و این مرحله را با موفقیت پشت سر می گذاریم.مرحله 5) ساخت فایل systemd سرویس Redis:فایل redis.service در مسیر زیر با ویرایشگر متن دلخواه باز می کنیم:vi /etc/systemd/system/redis.serviceسپس محتوای زیر را در فایل مذکور اضافه می کنیم:[Unit]Description=Redis Data StoreAfter=network.target[Service]User=redisGroup=redisExecStart=/usr/local/bin/redis-server /etc/redis/redis.confExecStop=/usr/local/bin/redis-cli shutdownRestart=always[Install]WantedBy=multi-user.targetفایل را ذخیره و از آن خارج می شویم، سپس آن را Enable و start میکنیم:systemctl enable redissystemctl start redisپس از start سرویس، برای اطلاع از وضعیت اجرا status آن را بررسی می کنیم:systemctl status redisخروجی دستور بالا بدون داشتن error باید مشابه متن زیر باشد:● redis.service - Redis Data Store   Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: disabled)   Active: active (running) since Mon 2018-11-12 04:39:32 CST; 5s ago Main PID: 9788 (redis-server)   CGroup: /system.slice/redis.service           └─9788 /usr/local/bin/redis-server 127.0.0.1:6379تبریک! Redis شما به درستی کامپایل و اجرا شده است، جهت بررسی عملکرد Redis دستور زیر را وارد می کنیم:redis-cli pingدرصورت صحیح بودن عملکرد با خروجی زیر مواجه می شویم:PONG</description><category>Keyvan Eslamian</category><author>Keyvan Eslamian</author><pubDate>Wed, 19 Aug 2020 18:42:03 +0430</pubDate></item></channel></rss>