تثبيت ريدماين في كوبرنيتيس - الجزء 2: تثبيت ريدماين
هذا هو الجزء الثاني من سلسلة حول نشر Redmine i Kubernetes. في هذه المقالة، سنقدم تعليمات حول كيفية نشر تثبيت موثوق لـ Redmine.
إعادة العد الجزء 1
بحلول الآن يجب أن تتطلع إلى تثبيت Redmine w Kubernetes. بعد كل شيء ، هذا هو ما جئت من أجله ، أليس كذلك؟
W Redmine في Kubernetes - الجزء 1: إعداد البيئة Kontroler ruchu przychodzącego قمنا بإنشاء نطاق DNS, redminek8s.ddns.net. الآن نحتاج فقط إلى تكوين HTTPS ونحن جاهزون لنشر Redmine.
Menedżer certyfikatów HTTPS
على الرغم من أنه يمكننا الاحتفاظ بـ Redmine الخاص بنا كـ HTTP, إلا أن HTTPS أصبح الأساسي للمواقع الإلكترونية ، بحيث يحذرك معظم المتصفحات من مشكلة أمان عندما لا ي تم استخدام HTTPS من قبل موقع ويب.
عادةً ما يكون تمكين HTTPS ليس مهمة بسيطة ، حيث تحتاج إلى شراء شهادة وتحميلها على موقعك ، وتجديدها بعد فترة معينة ، وتكرار العملية. يقوم cert-manager بتأتير كل هذا ، بما في ذلك تجديد الشهادات ، وحتى الحصول على شهادا ت مجانية. يمكنك رؤية مزيد من المعلومات على Ich strona ، ولكن سأشرح كل ما تحتاج إلى معرفته بعد ذلك.
Menedżer certyfikatów
قم بتنفيذ الخطوات التالية لتثبيت menedżer certyfikatów في عنقودك:
repozytorium sterów dodaje jetstack https://charts.jetstack.io Aktualizacja repozytorium sterów &&
helm install cert-manager jetstack / cert-manager --set installCRDs = true
أولاً ، قم بإضافة المستودع الذي يحتوي على cert-manager ، ثم قم بتثبيت أحدث إصدار له.
الاتصال بسلطة الشهادة
الآن نحتاج إلى إرشاد menedżer certyfikatów للاتصال بمزود الشهادة الذي نختاره. Użyj LetsEncrypt, aby uzyskać więcej informacji. أنشئ هذا الملف أولاً (تذكر أن تستبدل بعنوان بريد إلكتروني حقيقي) وسمه klaster-emisariusz.yaml
Wersja api: cert-manager.io/v1alpha2
rodzaj: ClusterIssuer
metadane:
nazwa: letsencrypt
specyfikacja:
kulminacja:
server: https://acme-v02.api.letsencrypt.org/directory
e-mail:
prywatnyKeySecretRef:
nazwa: letsencrypt
solwery:
- http01:
ingres:
klasa: nginx
ثم قم بتطبيقه على عنقودك باستخدام
kubectl stosuje -f klaster-emiter.yaml
تهانينا! الملف أعلاه هو أول تكوين Kubernetes نكتبه ونطبقه على العنقود. Bezpłatne połączenie z LetsEncrypt z obsługą Ingress Controller Korzystanie z LetsEncrypt ئه في الجزء 1 (الفئة: nginx في النهاية) يحتوي هذا النوع من التكوين على بعض الأسط ر مع مسافات للإشارة إلى تبعية بعض الخصائص للآخرين. احتفظ بهذه المسافات كما هو موضح لضمان قراءة الملف وتطبيقه بشكل صحيح.
الآن تم تمكين عنقودك من HTTPS. كلما قمنا بتثبيت تطبيق ، يمكننا توجيهه للعمل مع HTTPS و فوالا! سيتم القيام بعملية الحصول على الشهادة تلقائيًا خلف الكواليس.
تثبيت ريدماين
هذا ما كنا ننتظره جميعًا. يمكننا تثبيت ريدماين بعدة طرق مختلفة ، ولكن بلا شك الطريقة الأكثر ملاء مة هي استخدام Helm. كما فعلنا من قبل ، نقوم أولاً بإضافة المستودع الذي يحتوي على ريدماين
repozytorium sterów dodaj bitnami https://charts.bitnami.com/bitnami Aktualizacja repozytorium sterów &&
ولكن هذه المرة بدلاً من التثبيت على الفور ، سنقوم بإنشاء ملف تكوين لتح ديد بعض السلوك المخصص الذي نريد أن يكون لديه ريدماين.
سنفصل جميع التكوينات في قسمها الخاص ولكنك تضعها جميعًا في نفس الملف ، وا حدة بعد الأخرى. اسم الملف هو wartości.yaml.
جميع تطبيقات Helm لديها ملف wartości.yaml يحتوي على جميع التكوينات الممكنة التي يمكن إجراؤها على التطبيق. عند إنشاء wartości.yaml الخاص بنا ، نحدد التغييرات التي نريدها. سيتم ترك أي قيمة لا نشملها في ملفنا كما هي في الملف الافتراضي.
يمكن العثور أيضًا على جميع القيم الافتراضية على صفحة تطبيق Helm ، https://hub.helm.sh/charts/bitnami/redmine. قم بالتحقق من جميع التكوينات.
أول مستخدم مسؤول
Redmine Nazwa użytkownika: adminUser
RedminePassword:
هذه الخطوة ضرورية وسهلة الفهم. إنه أول مستخدم في ريدماين ، والذي سنستخدمه لتسجيل الدخول للمرة الأولى .
عندما يتم تثبيت ريدماين ، ستتمكن من الوصول إليه باستخدام هذا المستخدم ل تكوين تثبيتك الجديد تمامًا.
Obsługa PostgreSQL
بشكل افتراضي ستتطلب عملية التثبيت الخاصة بنا في Helm إنشاء قاعدة بيانات MariaDB. Użyj innego narzędzia PostgreSQL. تحتاج أيضًا إلى إضافة كلمة مرور على الأقل للوصول إلى هذه القاعدة بيانات ، كما يمكنك رؤية ذلك أدناه
DatabaseType: postgresql
mariadb:
włączone: fałsz
postgresql:
włączone: prawda
postgresqlBaza danych: Redmine
postgresqlNazwa użytkownika: Redmine
postgresqlPassword:
Bezpłatne połączenie z kontem MariaDB z usługą Postgre SQL-a.
Włącz DNS
التكوين أدناه هو الجانب الآخر من تكوين DNS الذي قمنا به في الجزء 1. كما يمكنك Korzystaj z protokołu TLS, z protokołu TLS, z protokołu الذييقف, z protokołu HTTPS, z protokołu اسم المضيف الذ ي استخدمناه عند إنشاء سجل DNS الخاص بنا:
Rzeczywistość:
تمكين: صحيح
certManager: صحيح
nazwa hosta: redminek8s.ddns.net
tls: صحيح
adnotacje:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: Letencrypt
أيضًا في السطرين الأخيرين نربط تطبيقنا بتحكم الدخول ومع إصدار العقدة ال ذي قمنا بإنشائه من قبل.
Najważniejsze informacje w Redmine:
ster instaluje Redmine -f values.yaml bitnami / redmine
هذا السطر مشابه للسطور الأخرى لتثبيت ster التي استخدمناها من قبل ، ولكن هذه المرة نقدم قيمًا مخصصة في ملفvalues.yaml. هذه هي الطريقة لتخصيص أي تطبيق Helm.
نحتاج إلى بعض الصبر أكثر ، حيث يستغرق إنشاء التطبيق بعض الوقت. يمكنك تنفيذ هذا الأمر للتحقق من حالة حاويات التطبيق الخاصة بك:
kubectl dostać strąki - zegarek
سيعيد الأمر شيئًا مشابهًا لهذا:
IMIĘ IMIĘ GOTOWY STATUS WZNOWUJE WIEK
. . .
redmine-999c68dd9-x7h2k 1/1 Running 0 6m40s
redmine-postgresql-0 1/1 Bieganie 0 6m40s
يجب عليك الانتظار حتى يكون حالة كلتا الحاويتين هي Running وجاهزة 1/1 ، والأمر الذي استغرق في حالتي حوالي 6 دقائق.
الآن كل شيء جاهز لفتح المتصفح والانتقال إلى نشرتنا الجديدة:
Redmine جاهز
اا
كوبرنيتيس هي أداة معقدة لنشر التطبيقات ، ولكن تجاوزنا تلك التعقيدات بم ساعدة Helm (دون اللعب على الكلمات) ونشرنا تثبيتًا موثوقًا لـ Redmine.
يمكنك العثور على ملخص لهذا الدليل في مستودع git التالي: https://github.com/lcofre/redmine-on-k8s. لا تتردد في المقارنة مع ملفاتك إذا واجهتك مشكلة.
تركنا بعض المفاهيم خارج النقاش لأنها كانت معقدة أو كانت الشرح محدد للسحاب ة. من بينها ليونة وجاهزية التطبيق الخاص بك ، وتكوين رسائل البريد الوارد ، و توسيع التطبيق للتعامل مع المزيد من الحمولة. يرجى إعلامنا بما يهمك أكثر حتى نتمكن من مناقشته في دليل مستقبلي.
الترقية النهائية لـ Redmine؟ سهلة.
احصل على جميع الأدوات القوية للتخطيط والإدارة والتحكم المثالي في المشرو ع في برنامج واحد.