اگر به دنبال ایجاد یک وب سایت یا وبلاگ استاتیک (پایا) هستید ، Jekyll می تواند یک راه حل عالی باشد. Jekyll یک مولد سایت استاتیک منبع باز است که به زبان Ruby نوشته شده و امکان اجرای سریع دستوراتی را می دهد که به شما در مدیریت سایت شما از ابتدا تا استقرار تولید ، همه از خط فرمان کمک می کند. Jekyll از وبلاگ آگاه است و به دسته بندی ها ، پست ها و صفحه بندی هایی با طیف وسیعی از واردکنندگان در دسترس برای وارد کردن مطالب قبلی وبلاگ ، اولویت می دهد. اگر نیاز دارید که اغلب به صورت آفلاین کار کنید ، و ترجیح می دهید از ویرایشگرهای سبک برای فرم های وب جهت نگهداری محتوا استفاده کنید ، یا مایل به استفاده از کنترل نسخه برای ردیابی تغییرات در وب سایت خود هستید ، Jekyll می تواند آنچه را که برای تحقق اهداف خود نیاز دارید ، در اختیار شما قرار دهد.
در این آموزش ، ما یک سایت توسعه Jekyll را در Ubuntu 20.04 با محتوای تولید شده به صورت خودکار نصب خواهیم کرد. با نصب Jekyll ، می توانید یک سایت یا وبلاگ شخصی ایجاد کنید که در درجه اول با استفاده از فایل های علامت گذاری به عنوان و چند دستور Jekyll انجام می شود.
پیش نیازها
برای دنبال کردن این آموزش ، به موارد زیر نیاز دارید:
سرور مجازی Ubuntu 20.04 با یک کاربر غیر ریشه و دارای امتیازات sudo: می توانید در مورد نحوه تنظیم کاربر با این امتیازات در راهنمای ستاپ اولیه سرور مجازی برای اوبونتو 20.04 اطلاعات بیشتری کسب کنید.
پس از تکمیل این پیش نیاز ، آماده نصب Jekyll و متعلقات آن هستید.
مرحله 1 – نصب Jekyll
کار را با به روز کردن لیست بسته های خود شروع خواهیم کرد تا مطمئن شویم که جدیدترین اطلاعات را در مورد جدیدترین نسخه های بسته ها و متعلقات آنها داریم:
⦁ $ sudo apt update

در مرحله بعد ، بیایید make  و build-essential را نصب کنیم تا کتابخانه های Jekyll کامپایل شود ، و برای Ruby و کتابخانه های توسعه آن استفاده شود. ما در اینجا پرچم y را در نظر میگیریم که yes را تایید کنیم ، یعنی می خواهیم بسته ها را نصب کنیم و از تأیید اعلان خودداری کنیم.
⦁ $ sudo apt -y install make build-essential ruby ruby-dev

پس از اتمام این کار ، اجازه دهید دو خط به فایل .bashrc خود اضافه کنیم تا به مدیر بسته Ruby’s gem بگوییم که gems را در پوشه هوم کاربر ما قرار دهد. این کار از بروز مشکلات ناشی از نصب در سراسر سیستم جلوگیری می کند و در عین حال دستور jekyll  محلی را نیز به PATH کاربر اضافه می کند.
.bashrc را با یک ویرایشگر مورد نظر خود مانند nano باز کنید:
⦁ $ nano .bashrc

در انتهای فایل خطوط زیر را اضافه کنید:
.bashrc
# Ruby exports

export GEM_HOME=$HOME/gems
export PATH=$HOME/gems/bin:$PATH

فایل را ذخیره کنید و ببندید. برای فعال کردن خروجی ها ، دستور زیر را اجرا کنید:
⦁ $ source ~/.bashrc

پس از اتمام این کار ، از gem  برای نصب Jekyll خود و همچنین Bundler استفاده می کنیم که متعلقات gem  را مدیریت می کند. توجه داشته باشید که این کار ممکن است مدتی طول بکشد.
⦁ $ gem install jekyll bundler

در مرحله بعد ، مطمئن خواهیم شد که تنظیمات فایروال ما امکان ترافیک از طریق سرور مجازی وب توسعه Jekyll را فراهم می کند.
مرحله 2 – باز کردن فایروال
بیایید بررسی کنیم که آیا فایروال فعال است یا خیر. اگر چنین است ، اطمینان حاصل خواهیم کرد که ترافیک به سایت ما مجاز است ، بنابراین می توانیم سایت توسعه خود را در یک مرورگر وب مشاهده کنیم.
⦁ $ sudo ufw status

اگر با وضعیت غیرفعال مواجه شدید ، دستورات زیر را اجرا کنید.
ufw allow OpenSSH
sudo ufw enable

این کار باعث می شود فایروال شما در هنگام راه اندازی سیستم اجرا شود. ممکن است پیام های زیر را دریافت کنید (برای ادامه با ‘y ‘ تأیید کنید):
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

در مثال ما ، فقط SSH مجاز است:
Output
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)

بسته به نحوه تنظیم فایروال تان ممکن است قوانین دیگری نیز در این زمینه داشته باشید یا اصلاً هیچ قانون فایروالی وجود نداشته باشد. از آنجا که فقط ترافیک SSH در این مورد مجاز است ، باید پورت 4000، پورت پیش فرض سرور مجازی توسعه Jekyll را باز کنیم:
⦁ $ sudo ufw allow 4000

اکنون قوانین فایروال ما باید موارد زیر را شامل شود:
Output
To Action From
— —— —-
OpenSSH ALLOW Anywhere
4000 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
4000 (v6) ALLOW Anywhere (v6)

اکنون با نصب نرم افزار و باز کردن پورت لازم ، آماده ایجاد سایت توسعه هستیم.
مرحله 3 – ایجاد یک سایت توسعه جدید
از دیرکتوری اصلی خود، از دستور Jekyll’s new برای ایجاد داربست برای سایتی در زیر مجموعه ای به نام www استفاده می کنیم:
⦁ $ cd ~

⦁ $ jekyll new www
دستور jekyll new برای نصب متعلقات لازم ، bundle install را شروع می کند ، سپس به صورت خودکار موضوعی با نام Minima را نصب می کند. پس از نصب موفق ، باید خروجی مانند زیر را دریافت کنید:
Output
New jekyll site installed in /home/sammy/www.

دستور جدید Jekyll دیرکتوری ها و فایل های زیر را ایجاد می کند:

├── 404.html
├── about.markdown
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.markdown
├── _posts
│ └── 2020-05-29-welcome-to-jekyll.markdown
└── _site

این فایل های وب سایت واقعی نیستند. بلکه فایلهای منبعی هستند که Jekyll برای ایجاد سایت استاتیک از آنها استفاده خواهد کرد. Jekyll به نامهای خاص ، الگوهای نامگذاری و ساختارهای دیرکتوری متکی است تا منابع مختلف محتوا را تجزیه کند و آنها را در یک سایت استاتیک جمع کند. استفاده از ساختار موجود و پیگیری کنوانسیون های نامگذاری Jekyll در هنگام افزودن پست ها و صفحات جدید بسیار مهم است.
نکته: tree یک دستور مفید برای بازرسی ساختار فایل ها و دیرکتوری ها از خط فرمان است. می توانید آن را با دستور زیر نصب کنید:
⦁ $ sudo apt install tree

برای استفاده از آن ، cd را در دیرکتوری مورد نظر خود قرار دهید و tree را تایپ کنید و یا مسیر رسیدن به نقطه شروع را با tree /home/sammy/www ارائه کنید.
مرحله 4 – راه اندازی وب سرور مجازی Jekyll
سرور مجازی وب سبک Jekyll به منظور پشتیبانی از توسعه سایت با نظارت بر فایل ها در دیرکتوری و بازگرداندن خودکار سایت استاتیک هر زمان که تغییر ایجاد شود ، طراحی شده است.
از آنجا که ما در حال کار بر روی یک سرور مجازی از راه دور هستیم ، برای جستجوی سایت از دستگاه محلی خود ، آدرس هاست را مشخص خواهیم کرد. اگر در حال کار روی یک دستگاه محلی هستید ، می توانید jekyll service را بدون تنظیمات هاست اجرا کنید و با http: // localhost: 4000 وصل شوید.
⦁ $ cd ~/www

⦁ $ jekyll serve –host=203.0.113.0

Output of jekyll server
Configuration file: /home/sammy/www/_config.yml
Source: /home/sammy/www
Destination: /home/sammy/www/_site
Incremental build: disabled. Enable with –incremental
Generating…
done in 0.645 seconds.
Auto-regeneration: enabled for ‘/home/sammy/www’
Server address: http://203.0.113.0:4000/
Server running… press ctrl-c to stop.

هنگامی که jekyll serve را وادار به شروع کردیم ، Jekyll پیکربندی و فایل های محتوا را در یک دیرکتوری جدید ، _site تجزیه و شروع به ارائه محتوای موجود در آن پوشه _siteمیکند.
: …
├── 404.html
├── about.markdown
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.markdown
├── _posts
│ └── 2020-05-29-welcome-to-jekyll.markdown
└── _site
├── 404.html
├── about
│ └── index.html
├── assets
│ ├── main.css
│ │ ├── main.css.map
│ └── minima-social-icons.svg
├── feed.xml
├── index.html
└── jekyll
└── update
└── 2020
└── 05
└── 29
└── welcome-to-jekyll.html

همچنین شروع به مشاهده تغییرات دیرکتوری فعلی ، www ، میکند. به محض ذخیره تغییر در یک پست یا صفحه ، سایت استاتیک به طور خودکار بازسازی می شود ، بنابراین مهم نیست که مستقیماً روی فایل های پوشه _site تغییری ایجاد نکنید.
اگر هنگام کار در سایت خود و در حین اجرای سرور مجازی توسعه در پیش زمینه ، این ترمینال را باز کنیم ، با اضافه کردن صفحات و پست ها و تغییر محتوا ، بازخورد فوری دریافت خواهیم کرد.
توجه: اگر در حال کار با یک سایت بزرگ هستید ، فعال کردن –incremental می تواند هر بار که تغییری به واسطه بازتولید فایل های تغییر یافته انجام میدهید، بازسازی را سرعت ببخشد اما ما برای این سایت کوچک به آن احتیاج نداریم. می توانید اطلاعات بیشتری در مورد این ویژگی آزمایشی در وب سایت Jekyll بدست آورید.
اکنون سایت در دسترس است. در یک مرورگر وب ، می توانیم از آن در آدرس سرور مجازی و پورت نمایش داده شده در خروجی حاصل از jekyll serve دیدن کنیم:

نتیجه
در این آموزش Jekyll را نصب کردیم و یک سایت توسعه با برخی از مطالب تولید شده به صورت خودکار ایجاد کردیم. می توانید با خواندن آموزش های دیگر ما در مورد این موضوع ، درباره Jekyll بیشتر بدانید:
• بررسی محتوای پیش فرض Jekyll
• نحوه کنترل URL ها و پیوندها در Jekyll

 

از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :

دسترسی از راه دور به برنامه GUI با Docker در اوبونتو 18.04

راه اندازی سایت توسعه Jekyll در اوبونتو 20.04

نحوه راه اندازی سایت توسعه Jekyll در اوبونتو 18.04

نحوه نصب و استفاده از Docker Compose در اوبونتو 20.04

نحوه اجرای چند نسخه PHP بر روی یک سرور با استفاده از Apache و PHP-FPM در CentOS 8

نحوه نصب و استفاده از TimescaleDB در Ubuntu 20.04

نحوه نصب و راه اندازی Laravel با Docker Compose در اوبونتو 20.04

 

 

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکاخرید سرور مجازی ارزان هلندvpsخرید vps هلندخرید سرور مجازی آمریکاخرید vps فرانسهتست vpsسرور مجازی تستسرور مجازی ویندوزارزانترین vpsخرید وی پی اسvps ارزان –