مقدمه
با حرکت ابزارهای گسترش دهنده به سمت cloud ، پذیرش پلتفرم cloud IDE (محیط پیشرفت در هم تنیده) در حال رشد است. Cloud IDE از هر نوع دستگاه مدرن از طریق مرورگرهای وب قابل دسترسی است و برای سناریوهای همکاری در زمان واقعی مزایای بسیاری را ارائه می دهند. کار در یک Cloud IDE ، یک محیط توسعه و آزمایش یکپارچه را برای شما و تیم شما ایجاد می کند ، در عین حال ناسازگاری های پلتفرم را به حداقل می رساند. چون از طریق مرورگرهای وب قابل دسترسی است ، Cloud IDE ها از هر نوع دستگاه مدرن در دسترس هستند.
Eclipse Theia یک Cloud IDE قابل توسعه است که بر روی یک سرور مجازی از راه دور اجرا میشود و از یک مرورگر وب قابل دسترسی است. از لحاظ بصری ، به گونه ای طراحی شده است که به طور مشابه با Microsoft Visual Studio Code دیده شود و کار شود ، به این معنی که از بسیاری از زبان های برنامه نویسی پشتیبانی می کند ، دارای یک طرح انعطاف پذیر و یک ترمینال یکپارچه است. آنچه Eclipse Theia را از دیگر نرم افزارهای cloud IDE جدا می کند قابلیت توسعه آن است. می توان آن را با استفاده از افزونه های سفارشی اصلاح کرد ، که به شما امکان می دهد یک Cloud IDE متناسب با نیازهای خود تهیه کنید.
در این آموزش ،Eclipse Theia را با استفاده از Docker Compose ، یک ابزار سازمان دهی حرفه ای، در سرور مجازی CentOS 7 خود به کار خواهید گرفت. با استفاده از nginx-proxy ، یک سیستم خودکار برای Docker ، آن را در دامنه خود قرار می دهید که فرایند پیکربندی Nginx را ساده تر می کند تا به عنوان یک پروکسی معکوس برای یک container سرویس دهد. همچنین با استفاده از یک گواهی نامه Let’s Encrypt TLS رایگان ، که با استفاده از افزونه تخصصی آن تهیه می کنید ، آن را ایمن خواهید کرد. در پایان ، شما باید Eclipse Theia را روی سرور مجازی CentOS 7 خود از طریق HTTPS در دسترس داشته باشید و از کاربر بخواهید وارد شود.
پیش نیازها
⦁ یک سرور مجازی CentOS 7 با امتیازات اصلی و یک حساب ثانویه و غیر ریشه. می توانید با دنبال کردن راهنمای تنظیم اولیه سرور مجازی ما برای CentOS 7 ، این تنظیمات را انجام دهید. برای این آموزش کاربر غیر ریشه sammy است.
⦁ Docker نصب شده روی سرور مجازی شما. مرحله 1 و مرحله 2 نحوه نصب Docker را در CentOS 7 دنبال کنید. برای آشنایی با Docker ، به اکوسیستم Docker: مقدمه ای بر مؤلفه های مشترک مراجعه کنید.
⦁ Docker compose نصب شده روی سرور مجازی تان. مرحله 1 نحوه نصب Docker Compose را در CentOS 7 دنبال کنید.
⦁ نام دامنه کاملاً ثبت شده. در این آموزش کلا از theia.your_domain استفاده می شود. می توانید نام دامنه را در Namecheap خریداری کنید ، یکی از آنها را به صورت رایگان در Freenom دریافت کنید ، یا از ثبت دامنه مورد نظر خود استفاده کنید.
⦁ یک ثبت A DNS با theia.your_domain که به آدرس IP عمومی سرور مجازی شما اشاره میکند. برای جزئیات بیشتر در مورد چگونگی اضافه کردن آنها می توانید این معرفی را در vpsgol DNS دنبال کنید.
مرحله 1 – استفاده از پروکسی nginx با Let’s Encrypt
در این بخش nginx-proxy و افزونه Let’s Encrypt را با استفاده از Docker Compose به کار میگیرید. این امر امکان تهیه و نوسازی مجوز خودکار TLS را فراهم می کند ، به طوری که هنگام استقرار Eclipse Theia از طریق HTTPS در دامنه شما قابل دسترسی خواهد بود.
برای اهداف این آموزش ، تمام فایل ها را تحت ~ / eclipse-theia ذخیره می کنید. با اجرای دستور زیر دایرکتوری ایجاد کنید:
⦁ $ mkdir ~/eclipse-theia
به آن مراجعه کنید:
⦁ $ cd ~/eclipse-theia
پیکربندی Docker Compose را برای nginx-proxy در فایلی به نام nginx-proxy-compose.yaml ذخیره خواهید کرد. آن را با استفاده از ویرایشگر متن خود ایجاد کنید:
⦁ $vi nginx-proxy-compose.yaml
خطوط زیر را اضافه کنید:
~/eclipse-theia/nginx-proxy-compose.yaml
version: ‘2’

services:
nginx-proxy:
restart: always
image: jwilder/nginx-proxy
ports:
– “80:80”
– “443:443”
volumes:
– “/etc/nginx/htpasswd:/etc/nginx/htpasswd”
– “/etc/nginx/vhost.d”
– “/usr/share/nginx/html”
– “/var/run/docker.sock:/tmp/docker.sock:ro”
– “/etc/nginx/certs”

letsencrypt-nginx-proxy-companion:
restart: always
image: jrcs/letsencrypt-nginx-proxy-companion
volumes:
– “/var/run/docker.sock:/var/run/docker.sock:ro”
volumes_from:
– “nginx-proxy”

در اینجا شما دو سرویس را تعریف می کنید که Docker Compose اجرا خواهد کرد ، nginx-proxy و همراه آن Let’s Encrypt. برای پروکسی ، شما jwilder / nginx-proxy را به عنوان تصویر مشخص میکنید، پورت های HTTP و HTTPS را نقشه برداری می کنید ، و والیوم هایی را تعریف می کنید که در زمان اجرا در دسترس شما خواهد بود.
والیوم ها دایرکتوری هایی در سرور مجازی شما هستند که سرویس تعریف شده به آنها دسترسی کامل خواهد داشت ، که بعداً برای تنظیم تأیید اعتبار کاربر از آنها استفاده خواهید کرد. برای دستیابی به این هدف ، از والیوم اول لیست استفاده می کنید ، که دایرکتوری محلی / etc / nginx / htpasswd را به همان قسمت موجود در داخل آن نگاشت می کشد. در آن پوشه ، nginx-proxy انتظار دارد فایلی را به نام دامنه هدف پیدا کند ، که حاوی اطلاعات ورود به سیستم برای احراز هویت کاربر در قالب htpasswd (username:hashed_password) است.
برای افزودن ، شما تصویر Docker را نامگذاری می کنید و با تعیین یک والیوم امکان دسترسی به سوکت Docker را می دهید. سپس ، شما مشخص می کنید که این افزونه باید دسترسی به والیومهای تعریف شده برای nginx-proxy را ادامه دهد. هر دو سرویس امکان تنظیم restart روی always را دارند که به Docker دستور می دهد کانتینر را در صورت خرابی یا ریبوت سیستم، مجدداً راه اندازی کند.
فایل را ذخیره کنید و ببندید.
پیکربندی را با اجرای دستور انجام دهید:
⦁ $ docker-compose -f nginx-proxy-compose.yaml up -d
در اینجا نام فایل nginx-proxy-compose.yaml را در پارامتر -f دستور docker-compose می گذارید ، که فایل را برای اجرا مشخص می کند. سپس ، شما فعل UP را می گذرانید که به آن دستور می دهد کانتینرها را اجرا کند. فلگ -d حالت جداشده را فعال می سازد ، به این معنی که Docker Compose کانتینرها را در پس زمینه اجرا می کند.
خروجی نهایی به شرح زیر خواهد بود:
Output
Creating network “eclipse-theia_default” with the default driver
Pulling nginx-proxy (jwilder/nginx-proxy:)…
latest: Pulling from jwilder/nginx-proxy
8d691f585fa8: Pull complete
5b07f4e08ad0: Pull complete

Digest: sha256:dfc0666b9747a6fc851f5fb9b03e65e957b34c95d9635b4b5d1d6b01104bde28
Status: Downloaded newer image for jwilder/nginx-proxy:latest
Pulling letsencrypt-nginx-proxy-companion (jrcs/letsencrypt-nginx-proxy-companion:)…
latest: Pulling from jrcs/letsencrypt-nginx-proxy-companion
89d9c30c1d48: Pull complete
668840c175f8: Pull complete

Digest: sha256:a8d369d84079a923fdec8ce2f85827917a15022b0dae9be73e6a0db03be95b5a
Status: Downloaded newer image for jrcs/letsencrypt-nginx-proxy-companion:latest
Creating eclipse-theia_nginx-proxy_1 … done
Creating eclipse-theia_letsencrypt-nginx-proxy-companion_1 … done

شما nginx-proxy و همراهش Let’s Encrypt را با استفاده از Docker Compose به کار گرفته اید. اکنون می توانید Eclipse Theia را در دامنه خود تنظیم کرده و آن را ایمن کنید.
مرحله 2 – به کارگیری Eclipse Theia دوکر شده
در این بخش ، فایلی را ایجاد خواهید کرد که شامل هر ترکیب ورود به سیستم مجاز میباشد که کاربر باید آن را وارد کند. سپس Eclipse Theia را با استفاده از Docker Compose به سرور مجازی خود منتقل می کنید و با استفاده از nginx-proxy آن را در دامنه امن خود قرار می دهید.
همانطور که در مرحله قبل توضیح داده شد ، nginx-proxy انتظار دارد که ترکیب های ورود به سیستم در فایلی به نام دامنه در معرض ، با فرمت htpasswd قرار بگیرند و در دایرکتوری / etc / nginx / htpasswd در کانتینر ذخیره شوند. همانطور که در پیکربندی nginx-proxy مشخص کرده ایم ، دایرکتوری محلی که به دایرکتوری مجازی نگاشت می کند ، نیازی به یکسان بودن ندارد.
برای ایجاد ترکیبات ورود ، ابتدا با اجرای دستور زیر باید htpasswd را نصب کنید:
⦁ $ sudo apt install apache2-utils
پکیج httpd-tools حاوی برنامه htpasswd است.
دایرکتوری / etc / nginx / htpasswd را ایجاد کنید:
⦁ $ sudo mkdir -p /etc/nginx/htpasswd
فایلی ایجاد کنید که ورود به سیستم را برای دامنه شما ذخیره کند:
⦁ $ sudo touch /etc/nginx/htpasswd/theia.your_domain

به یاد داشته باشید theia.your_domain را با دامنه Eclipse Theia خود جایگزین کنید.
برای افزودن نام کاربری و رمز ورود ، دستور زیر را اجرا کنید:
⦁ $ sudo htpasswd /etc/nginx/htpasswd/theia.your_domain username
USERNAME را با نام کاربری که می خواهید اضافه کنید جایگزین کنید. از شما دوبار رمز عبور خواسته می شود. پس از ارائه آن ، htpasswd نام کاربری و جفت رمز عبور را در انتهای فایل اضافه می کند. می توانید این دستور را به هر تعداد ورود به سیستم که میخواهید تکرار کنید.
اکنون ، پیکربندی را برای استقرار Eclipse Theia ایجاد خواهید کرد. شما آن را در فایلی به نام eclipse-theia-compose.yaml ذخیره خواهید کرد. آن را با استفاده از ویرایشگر متن خود ایجاد کنید:
⦁ $ vi eclipse-theia-compose.yaml
خطوط زیر را اضافه کنید:
~/eclipse-theia/eclipse-theia-compose.yaml
version: ‘2.2’

services:
eclipse-theia:
restart: always
image: theiaide/theia:next
init: true
environment:
– VIRTUAL_HOST=theia.your-domain
– LETSENCRYPT_HOST=theia.your-domain

در این پیکربندی ، شما یک سرویس واحد به نام eclipse-theia با ریستارت برای ALWAYS و theiaide/theia:next به عنوان تصویر کانتینر تعریف می کنید: شما همچنین می توانید init را روی true تنظیم کنید تا به Docker دستور دهید هنگام اجرای Eclipse Theia در داخل کانتینر ، از init به عنوان مدیر اصلی فرآیند استفاده کند.
سپس دو متغیر محیط را در بخش environment مشخص می کنید: VIRTUAL_HOST و LETSENCRYPT_HOST. اولین مورد به پروکسی nginx منتقل می شود و به آن می گوید کانتینر چه دامنه ای را باید در معرض دید قرار دهید ، در حالی که دومی توسط افزونه Let’s Encrypt آن استفاده می شود و مشخص می کند که برای کدام دامنه درخواست گواهینامه TLS شود. مگر اینکه یک wildcard را به عنوان مقدار VIRTUAL_HOST تعیین کنید ، این دو مقدار باید یکسان باشند.
به یاد داشته باشید theia.your_domain را با دامنه مورد نظر خود جایگزین کنید ، سپس فایل را ذخیره کنید و ببندید. اکنون با اجرای دستور زیر Eclipse Theia را اجرا کنید:
⦁ $ docker-compose -f eclipse-theia-compose.yaml up -d
خروجی نهایی مشابه زیر به نظر می رسد:
Output

Pulling eclipse-theia (theiaide/theia:next)…
next: Pulling from theiaide/theia
63bc94deeb28: Pull complete
100db3e2539d: Pull complete

Digest: sha256:c36dff04e250f1ac52d13f6d6e15ab3e9b8cad9ad68aba0208312e0788ecb109
Status: Downloaded newer image for theiaide/theia:next
Creating eclipse-theia_eclipse-theia_1 … done

سپس در مرورگر خود به دامنه مورد استفاده برای Eclipse Theia بروید. مرورگر شما اعلانی را به شما نشان می دهد که از شما خواسته می شود وارد شوید. پس از ارائه اطلاعات صحیح ، شما وارد Eclipse Theia می شوید و بلافاصله رابط کاربری گرافیکی آن را مشاهده می کنید. در نوار آدرس یک پدلاک را مشاهده خواهید کرد که نشان می دهد اتصال امن است. اگر این را بلافاصله مشاهده نکردید ، چند دقیقه صبر کنید تا گواهینامه های TLS ارائه شود ، سپس صفحه را مجدد بارگیری کنید.

اکنون که می توانید به راحتی به cloud IDE خود دسترسی داشته باشید ، در مرحله بعد شروع به استفاده از ویرایشگر خواهید کرد.

مرحله 3 – استفاده از رابط Eclipse Theia
در این بخش به بررسی برخی از ویژگی های رابط Eclipse Theia می پردازید.
در سمت چپ IDE ، یک ردیف عمودی از چهار دکمه وجود دارد که متداول ترین ویژگی های مورد استفاده را در یک صفحه جانبی باز می کند.
این نوار قابل تنظیم است بنابراین می توانید این نماها این نوار قابل سفارشی سازی است، بنابراین این نمایه ها را به ترتیب دیگری جابجا کنید یا آنها را از نوار حذف کنید. به طور پیش فرض ، اولین نمای پانل Explorer را باز می کند که ناوبری شبیه به درخت ساختار پروژه را فراهم می کند. می توانید پوشه ها و فایل های خود را در اینجا مدیریت کنید – ایجاد کنید ، حذف کنید، جابجا کنید و در صورت لزوم تغییر نام دهید.
بعد از ایجاد فایل جدید از طریق منوی File ، یک فایل خالی را در یک برگه جدید باز خواهید کرد. پس از ذخیره ، می توانید نام فایل را در صفحه جانبی Explorer مشاهده کنید. برای ایجاد پوشه ها بر روی نوار کناری Explorer کلیک راست کرده و روی New Folder کلیک کنید. می توانید پوشه ای را با کلیک روی نام آن و همچنین کشیدن و رها کردن فایل ها و پوشه ها به قسمتهای بالای لیست گسترش دهید تا آنها را به یک مکان جدید منتقل کنید.

دو گزینه بعدی دسترسی به جستجو و جایگزینی قابلیت ها را فراهم می کند. پس از آن ، مورد بعدی نمایی از سیستم های کنترل منبع را که ممکن است از آنها استفاده کنید ، مانند Git ، ارائه می دهد.
نمای نهایی گزینه اشکال زدایی است که کلیه اقدامات متداول را برای اشکال زدایی در پنل ارائه می دهد. می توانید پیکربندی های اشکال زدایی را در فایل launch.json ذخیره کنید.

قسمت اصلی GUI ویرایشگر شماست که می توانید با استفاده از زبانه ها برای ویرایش کد خود جدا کنید. می توانید نمای ویرایش خود را به یک سیستم شبکه یا به فایل های جانبی تغییر دهید. مانند همه IDE های مدرن ، Eclipse Theia از هایلایت دستوری برای کد شما پشتیبانی می کند.

می توانید با وارد کردن CTRL + SHIFT + `، یا با کلیک کردن بر روی Terminal در منوی بالا ، و انتخاب گزینه New Terminal ، به ترمینال دسترسی پیدا کنید. ترمینال در یک پانل پایین باز خواهد شد و دایرکتوری کار آن روی فضای کاری پروژه تنظیم می شود ، که شامل فایل ها و پوشه های نمایش داده شده در پانل سمت Explorer است.

شما یک نمای کلی در سطح بالا از رابط Eclipse Theia جستجو کرده اید و برخی از متداول ترین ویژگی ها را مرور کرده اید.

نتیجه
اکنون Eclipse Theia ، یک Cloud IDE همه کاره ، با استفاده از Docker Compose و nginx-proxy بر روی سرور مجازی CentOS 7 خود نصب کرده اید. شما آن را با یک مجوز Let’s Encrypt TLS رایگان ایمن کرده اید و نمونه ای را تنظیم کرده اید تا به اعتبار ورود به سیستم از طرف کاربر نیاز داشته باشید. شما می توانید بر روی کد منبع خود و اسناد با آن به صورت جداگانه کار کنید یا با تیم خود همکاری کنید. در صورت نیاز به قابلیت های اضافی ، می توانید نسخه دیگری از Eclipse Theia خود را نیز ایجاد کنید. برای کسب اطلاعات بیشتر در مورد چگونگی انجام این کار ، به مطالب Theia مراجعه کنید.

 

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

نحوه تایید صحت رمز عبور با Apache در اوبونتو 18.04

نحوه نصب و استفاده از TimescaleDB در CentOS 7

نحوه تایید صحت رمز عبور با Apache در اوبونتو 18.04 (شروع سریع)

نحوه راه اندازی Eclipse Theia Cloud IDE Platform در Debian 10

نحوه نصب و استفاده ازRadamsa برای فوز کردن برنامه ها (تکنیک تست خودکار نرم افزار) و خدمات شبکه روی Ubuntu 18.04

نحوه نصب Docker Compose در Debian 10

چگونه می توان با کتابخانه (library) درخواست ها در پایتون شروع به کار کرد

نحوه اجرای صفحه گذاری در MySQL با PHP روی اوبونتو 18.04

نحوه تنظیم پلتفرم Eclipse Theia Cloud IDE در CentOS 7

بسته بندی برنامه Laravel 6 برای توسعه با Docker Compose در اوبونتو 18.04

نحوه بهینه سازی درخواست های MySQL با ذخیره سازی ProxySQL در اوبونتو 16.04

نحوه استفاده از Ansible برای نصب و راه اندازی وردپرس با LAMP در اوبونتو 18.04

چگونه می توان پلتفرم كد سرور Cloud IDE را در اوبونتو 18.04 تنظیم كرد (شروع سریع)

چگونه می توان از رول های ansible برای انتزاع محیط زیرساختی خود استفاده کرد

نحوه پیکربندی یک خوشه Galera با MySQL در سرورهای اوبونتو 18.04

نحوه تهیه نسخه پشتیبان و بازیابی یک خوشه Kubernetes در vpsgol با استفاده از Velero

نحوه نصب و استفاده از PostgreSQL در CentOS 7

چگونه می توان پلتفرم Eclipse Theia Cloud IDE را روی اوبونتو 18.4 تنظیم کرد

نحوه استقرار و مدیریت DNS با استفاده از DNSControl در Debian 10

چگونه می توان پلتفرم Cloud IDE کد سرور را روی CentOS 7 تنظیم كرد

 

 

کلمات کلیدی خرید سرور

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

برچسب‌ها:,