Nasıl Özel Redmine Docker Görüntüsü Oluşturulur
Özelleştirmeden önceki Redmine
לֹא: Redmine'in yerel docker sürümü https://hub.docker.com/_/redmine adresinde bulunabilir. Burada, harici bir veritabanını nasıl dolduracağınızı ve harici klasörleri nasıl bağlayacağınızı (eklentileri yükleyebilmek için) iyi talimatlar bulabilirsiniz.
Eğer benim gibiyseniz ve özel bir Redmine Docker görüntüsü oluşturmak için kodu doğrudan görmeyi tercih ederseniz, github.com/lcofre/redmine adresine gidip Dockerfile'ı kontrol edebilirsiniz.
Redmine Docker görüntüsü iyi bir başlangıç noktasıdır, ancak muhtemelen istediğiniz eklentiler ve temalarla özelleştirmek istersiniz. Bu nasıl yapılır adlı rehberde, resmi olanına dayanan bir Docker görüntüsü oluşturacak, bazı temalar ve eklentiler ekleyecek ve bunu docker kayıt defterine yükleyeceğiz.
Basitlik açısından, harici bir veritabanı yerine Redmine konteynerinin içinde bir dahili veritabanı kullanmayacağız. Bununla birlikte, üretim ortamı için ayrı bir depolama konteyneri kurmanız önerilir.
אקלענטילר וטמלאר
Redmine'e eklemek için çeşitli yolları göstermek için birkaç eklenti ve tema seçtik:
- קינר çubuğunu גיזל, özellikle sorunları yazarken daha fazla ekran alanı sağlamak için bir eklenti
- Panodan yapıştır, bir dosya seçmek yerine panodan ekran görüntüleri eklemek için
- A1 ve גיטמייק, arayüzün görünümünü değiştiren iki tema
Veritabanı göçü gerektiren eklentileri hariç tutuyoruz, çünkü önceden var olan bir veritabanına ihtiyacınız var. Göç gerektiren bir eklenti yüklemek isterseniz lütfen aşağıya yorum yapın, size iyi fikirlerimiz var.
Dockerfile'ı Yazma
Bir Dockerfile, bir Docker görüntüsünü nasıl oluşturacağımız hakkında bir reçetedir. Burada öğreneceğimiz ilk gerçek, görüntümüzü başka bir görüntüye dayandırmamız gerektiğidir, bu yüzden Redmine için resmi olanı kullanacağız
מאת Redmine
Dockerfile'ın bu ilk satırı, görüntümüzü yazma anında en son ve en iyi sürüme dayandıracaktır. Bu, en son sürümü alacağından beklenmedik yeni sürümleri önlemek için belirli bir sürüm kullanmanız tercih edilebilir
מ- Redmine: 4.1.0
באמצעות Git כדי להשיג את הרכיבים
ברוב המקרים, לנושאים ולתוספים יש מאגרי git שבהם אנו יכולים להוריד את הקוד האחרון. זה המקרה לשלושת המרכיבים הבאים.
תמונת הבסיס Redmine מגיעה ללא GIT, אך אנו יכולים להוסיף אותה לתמונה בדרך זו
הפעל התקנת GIT
זה יבוצע כאשר התמונה בנויה ותאפשר לך להשתמש ב- git בהוראות שלהלן.
נושא Gitmike: הם ממליצים לשבט ישירות את המאגר שלהם
הפעל שיבוט git https://github.com/makotokw/redmine-theme-gitmike.git ציבור / נושאים / gitmike
הקו ישמור את הפרויקט המשובט בתיקיה הציבורית / הנושאים המתאימים
הסתר את סרגל הצד: ניתן להחיל את אותו הנוהל על תוספים. תיקיה זו אינה דורשת יותר מאשר הצבת התיקיה המשובצת בתיקיית התוספים
הפעל שיבוט git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide
הדבק תמונה של הלוח: זה נראה גם הנוהל האופייני, שיבט את הריפו ואתה טוב ללכת
הפעל שיבוט git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste
אבל אם אתה קרא עוד קצת תראה כי "מומלץ להתקין פנינה של RMagick, אחרת תמונות מצורפות לא יופיעו בקבצי PDF מיוצאים". אז איך עושים זאת? זה אמור להיות קל כמו
הפעל פנינה להתקין
אבל אתה בטח יודע שצריך לבנות את פנינה לפני שתוכל להתקין אותה, לכן עליך להתקין חבילות מסוימות לפני התקנת פנינה. הקו שאתה באמת צריך הוא
RUN apt להתקין -ה build-חיוני imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \
& & פנינה להתקין rmagick
הכל בפקודה אחת, מופרדים בשתי שורות לקריאות.
המחבר המקורי של התוסף הזה אינו מספק גרסה עבור Redmine 4, אך חיפוש אחר שם התוסף ב- GitHub הנחית אותי בפרויקט שעושה: הדבק RubyClickAP / clipboard_image_paste.
הוספת תוסף או נושא ממקור שהורד
השמיים נושא A1 היא דוגמה טובה להמחשת המקרים שבהם יש את המקור, אך לא כתובת אתר להורדה במהלך תהליך הבנייה. אפשרות אחת במקרים כאלה היא לספק את המקור לתהליך הבנייה. ככה התוכן מתווסף לתמונה מבלי להוריד אותו
COPY a1 ציבורי / נושאים / a1
זה מחייב את תיקיית a1 להיות באותו מקום בו נמצא Dockerfile.
עכשיו אתה מוכן לבנות את התמונה שלך, אז פתח מסוף איפה Dockerfile שלך ולבצע
docker build - my-redmine.
לאחר בנייתו תוכלו להריץ את התמונה שלכם
docker run -it -p 3000: 3000 - שם my-redmine my-redmine
קדימה, פתח את http: // localhost: 3000 כדי לראות את Redmine המותאם אישית שלך!
סמן מחדש לאחר ההתאמה האישית
כמה טיפים להוסיף תוספים נוספים
על מנת לנסות תוספים חדשים, עדיף תמיד להשתמש במיכל Redmine טרי. כך הבנתי ש- rmagick דורש התקנת חבילות מסוימות. ראשית, הפעל מופע שניתן למחוק עם Redmine עם
הפעלת docker - rm -d -p 3000: 3000 - name test-redmine redmine
ואז הזן את המופע עם
מבצעים של דוקר - מבחן redmine bash
שם אתה יכול להתקין חבילות מערכת הפעלה, אבני חן או להעביר הגירה. רק זכור את הצעדים כדי שתוכל להוסיף אותם ל- Dockerfile שלך!
Docker Hub'a özel resminizi yükleme
Yeni oluşturduğunuz resim yalnızca yerel ortamınızda kullanılabilir. Başkalarına da kullanılabilir hale getirmek isterseniz, diyelim ki herkese, Dockerfile ve ilgili dosyaları bir git deposuna yükleyebilir ve ilgilenenler resmi kendileri oluşturabilir. Ancak Docker, oluşturduğunuz resmi kayıt defterine yüklemenize de izin verir. Bunun için hub.docker.com'da bir hesap oluşturun ve resminiz için bir depo da oluşturun. Ardından terminalde şu şekilde oturum açın
כניסה למעגן
Resminizi depoya yükleyebilmesi için labelleyin
תג הדוקר my-redmine: האחרונה של lcofre / redmine: האחרונה
ve şu şekilde itin
לדחוף דוקר lcofre / redmine: אחרון
Docker kayıt defterindeki Docker resmi
Artık herkes resminizi deneyebilir
מפעיל docker -it -p 3000: 3000 - שם my-redmine lcofre / redmine
İşte bu kadar! Bu, standart bir Redmine kurulumundan Docker kayıt defterinde erişilebilir bir kişiselleştirilmiş sürüme nasıl geçeceğinizdir. Lütfen yorumlarınızı veya sorularınızı aşağıya paylaşın.
Docker resim boyutunu kırpma
Depodaki Dockerfile birçok satırı birleştirdi. Bu, daha küçük resimler yapmak için bir Docker önerisidir. Bu öneriyi ve diğerlerini https://docs.docker.com/develop/develop-images/dockerfile_best-practices/ אתה יכול למצוא את הכתובת.
Resmin son boyutunu azaltmak için başka bir öneri, Redmine'in alpine sürümünü kullanmaktır
מ Redmine: אלפיני
Alpine farklı bir Linux dağıtımıdır. Paketleri yüklemek için apt yerine apk kullanmanız gerekmektedir.
Son bir ipucu: Dockerfile'da apt ile yüklediğimiz paketlere artık ihtiyaç yoktur. Çoklu aşamalı yapıları kullanma en iyi uygulamasını takip edebilirsiniz: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds
Küçük boyutlu bir Docker resmi tutma uygulaması, özellikle örnek sayısını ölçeklendirirken yardımcı olur, ayrıca resminizdeki saldırı yüzeyini azaltır.
Redmine yükseltmesi için en iyi seçenek mi? קולאי.
Tüm güçlü araçları tek bir yazılımda mükemmel proje planlama, yönetim ve control için edinin.