دست کم گرفتن ارزش مجموعههای اداری آنلاین مانند Google Docs و فضای ذخیرهسازی ابری در زندگی افراد فناوریگرا سخت است. فناوری آنقدر گسترده شده است که حتی مایکروسافت که مدت هاست بر بازار برنامه های اداری تسلط داشته است، اخیراً بر توسعه برنامه وب آفیس 365 و متقاعد کردن کاربران برای تغییر به یک مدل اشتراک برای استفاده از خدمات خود متمرکز شده است. ما از علاقه مندان به مراحل نصب و پیکربندی فضای ذخیره سازی خود تحت cat دعوت می کنیم.
مدتی پیش راهحلهای ذخیرهسازی ابری و مجموعههای اداری وب منبع باز را بررسی کردیم که میتوانستند به راحتی برای استفاده در یک شرکت کوچک مستقر شوند. انگیزه اصلی برای آنلاین نگه داشتن تمام اسناد، به حداقل رساندن کاغذبازی و اجرای شیوه های تجاری خوب با وجود حجم کم تراکنش ها است. روی دیگر سکه این است که اجاره یک سرور ابری برای ارائه این سرویس، امنیت کمتری نسبت به ذخیره مستقیم آن در محل شرکت دارد، زیرا شما هیچ وسیله ای برای بررسی دسترسی فیزیکی به سرور یا ترافیک خود ندارید. بنابراین، رمزگذاری سرتاسر و نرم افزار منبع باز نیز مورد نیاز است.
با در نظر گرفتن تمام اطلاعات موجود در مورد راه حل های منبع باز، دو پروژه فعال (با تعهدات در مخزن git در 12 ماه گذشته) که برای ذخیره سازی ابری توسعه یافته اند پیدا کردیم: NextCloud و OwnCloud و تنها مجموعه اداری فعال ONLYOFFICE. هر دو ابزار ذخیره سازی ابری تقریباً عملکرد یکسانی دارند و تصمیم برای انتخاب NextCloud بر اساس شواهدی مبنی بر ادغام آن با ONLYOFFICE برای تعامل راحت کاربر با نرم افزار است. با این حال، زمانی که ما شروع به استقرار سرویس ها کردیم، کمبود اطلاعات در مورد یکپارچه سازی سرویس های فوق آشکار شد. ما 3 فیلم آموزشی در مورد نحوه ادغام پیدا کردیم:
هیچ یک از سه ویدیو به سؤال نصب سرویس اسناد ONLYOFFICE روی همان سرور فیزیکی NextCloud با nginx مشترک پاسخ نداد. در عوض، آنها از تکنیک های جداسازی مانند استفاده از پورت های جداگانه برای api سرویس اسناد استفاده کردند. پیشنهاد دیگر این بود که یک سرور جداگانه برای Document Service مستقر کنید و نمونه nginx را به صورت دستی پیکربندی کنید تا یک کلید دسترسی (کلید دسترسی از قبل شناخته شده که حق دسترسی به ابر داده را تأیید می کند) و گواهی های TLS نصب کند. رویکردهای فوق امن و به اندازه کافی مؤثر نبودند، بنابراین NextCloud، ONLYOFFICE و یک nginx مشترک را ادغام کردیم که درخواستها را بر اساس نام دامنه با استفاده از docker-compose جدا میکند. در اینجا اطلاعات گام به گام در مورد نحوه انجام آن وجود دارد.
مرحله 1: ظرف nginx
این یک راه اندازی بسیار ساده است، اما این مرحله بیشترین کار را برای پیکربندی سرور پروکسی معکوس نیاز دارد. ما ابتدا پیکربندی docker-compose را برای تصویر nginx:stable ایجاد کردیم.
این یک ظرف با پورتهای 80 و 443 باز برای عموم ایجاد میکند، پیکربندی را به nginx/nginx-vhost.conf ترسیم میکند، و یک فروشگاه برای گواهیهای تولید شده به عنوان گواهیهای خودامضا یا با استفاده از certbot Let's encrypt در /nginx/certificates تعریف میکند. این مکان باید شامل پوشههایی برای office.yourdomain.com و cloud.yourdomain.com باشد، با فایلهای fullchain1.pem و privkey1.pem در هر کدام به ترتیب برای زنجیره گواهی و کلید خصوصی سرور. در اینجا می توانید اطلاعات بیشتری در مورد نحوه تولید گواهی خود امضا شده بخوانید. www.akadia.com/services/ssh_test_certificate.html (تغییر نام .key و .crt به .pem بدون تبدیل ساختار فایل برای nginx کار می کند).
پس از آن فایل vhost را تعریف کردیم. ما ابتدا رفتار پورت 80 را به عنوان یک تغییر مسیر ساده به https تعریف می کنیم، زیرا ما نمی خواهیم به هیچ ترافیک http اجازه دهیم
اما فراموش نکنید که ظرف nginx را به سرویس اسناد پیوند دهید:
services:
...
nginx:
...
depends_on:
- onlyoffice
مرحله 3: NextCloud
ابتدا خدمات جدید را اضافه کنید:
services:
...
db:
image: mariadb
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
volumes:
- /data/nextcloud_db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=#put some password here
- MYSQL_PASSWORD=#put some other password here
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
depends_on:
- db
- onlyoffice
restart: always
و یک لینک به nginx اضافه کنید:
services:
...
nginx:
...
depends_on:
- app
اکنون زمان بارگیری ظروف است.
docker-compose up -d
پس از مدتی، nginx شروع به هدایت شما به قسمت جلویی NextCloud می کند که صفحه تنظیمات پیش فرض است. شما باید نام کاربری و رمز عبور را برای اولین کاربر سرپرست خود و اعتبار پایگاه داده ای که در docker-compose.yml ارائه کرده اید وارد کنید پس از تکمیل تنظیمات، می توانید وارد شوید. در مورد ما، انتظار تقریباً یک دقیقه طول کشید و قبل از اینکه بتوانیم به سرویس ابری وارد شویم، نیاز به تجدید مجدد صفحه ورود به سیستم داشتیم.
پنجره تنظیمات سرویس NextCloud
مرحله 4: اتصال NextCloud و ONLYOFFICE
در این مرحله باید اپلیکیشن NextCloud را نصب کنید که قابلیت ONLYOFFICE را به هم متصل می کند. بیایید با کنترل پنل برنامه در گوشه سمت راست بالای منو شروع کنیم. برنامه ONLYOFFICE را (در زیر Office & متن یا با استفاده از جستجو) پیدا کنید، آن را نصب و فعال کنید.
پس از آن از طریق منوی گوشه سمت راست بالا به تنظیمات بروید و باید مورد ONLYOFFICE را در منوی سمت چپ پیدا کنید. برو داخلش شما باید آدرس های زیر را ثبت کنید.
تنظیمات برنامه یکپارچه سازی
آدرس اول برای پیوند مستقیم به برخی از فایل های js و css از برنامه در حال اجرا در مرورگر استفاده می شود (این همان چیزی است که برای باز کردن دسترسی به سرویس ONLYOFFICE از طریق nginx نیاز داریم). کلید مخفی استفاده نمی شود زیرا ما به لایه ایزوله Docker بیشتر از کلید تأیید اعتبار دائمی اعتماد داریم. آدرس سوم توسط ظرف NextCloud برای اتصال مستقیم به API ONLYOFFICE استفاده می شود و از نام میزبان داخلی پیش فرض Docker استفاده می کند. خوب، آخرین فیلد استفاده میشود تا ONLYOFFICE بتواند با استفاده از یک آدرس IP خارجی یا یک آدرس Docker داخلی، درخواستهایی را به NextCloud API ارسال کند، اگر از شبکههای Docker استفاده میکنید، اما این مورد در مورد ما استفاده نمیشود. مطمئن شوید که تنظیمات فایروال شما اجازه این نوع تعاملات را می دهد.
پس از ذخیره، NextCloud اتصال را آزمایش می کند و اگر همه چیز درست باشد، تنظیمات مربوط به ادغام را به شما نشان می دهد - به عنوان مثال، چه نوع فایل هایی را می توان با این ادغام ویرایش کرد. به دلخواه خود را سفارشی کنید.
مرحله آخر: کجا می توان ویرایشگر را پیدا کرد
اگر به پوشههای ذخیرهسازی ابری خود برگردید و برای ایجاد یک فایل جدید روی "+" کلیک کنید، گزینه جدیدی برای ایجاد یک سند، صفحه گسترده یا ارائه خواهید داشت. با کمک آنها، می توانید این نوع فایل ها را با استفاده از ONLYOFFICE ایجاد کنید و بلافاصله قادر به ویرایش آن ها باشید.