בהצטיינות יש לדמיין את Docker Redmine אישית.

6/16/2020
דקות 9
Lukáš Beňa -> Lukáš Beňa
Redmine este una dintre cele mai populare instrumente pentru managementul proiectelor și urmărirea problemslor. Dacă l-ați încercat sau ați fost nevoit să-l instalați într-un mediu de producție, סביר להניח כי știți și că קיים או דמיינו אוficială Docker care medrucal pent simpplificătarete יש סוסה.

Redmine înainte de personalizare

הערה: Redmine nativ docker poate fi găsit la adresa https://hub.docker.com/_/redmine. Aici puteți găsi, de asemenea, instrucțiuni Bune despre cum să populați o bază de date externă și să montați foldere externe (pentru a putea instala plugin-uri).

אני רוצה להעדיף את ה-Dacă sunteți ca mine și preați să vedeți ישיר קודול pentru construirea unei imagini Docker Redmine התאמה אישית, מיזוג github.com/lcofre/redmine și verificați Dockerfile-ul.

Imaginea Docker Redmine este un punct de pornire bun, deși probabil că doriți să o personalizați cu plugin-uri și theme după preferințele dvs. În acest ghid, vom construi או לדמיין את Docker bazată pe cea oficială, adăugăm câteva teme și plugin-uri și o încărcăm în registrul Docker.

Pentru simplitate, nu vom utiliza o bază de date externă, ci o bază de date internă în containerul Redmine însuși. פנטרו ואמצעי הייצור, este recomandabil să configurați un container de stocare dedicat.


Plugin-uri ו-teme

אם תוספי ה-Câteva עשו את כל התוספים של רדמין:

  • Ascunde bara laterală, un plugin pentru a permite mai mult spațiu pe ecran, în special atunci cand se scriu בעיות
  • לוח כתיבה, pentru a atașa capturi de ecran lipind din הלוח în loc să selectați un fișier
  • A1 סי גיטמייק, două teme pentru a schimba aspectul UI-ului

אל תכלול טיפול ב-plugin-urile necesită או מיגרה בתאריך תאריך, מצא את התאריך הקודם. Vă rugăm să comentați mai jos dacă aveți nevoie să instalați un plugin care necesită migrări, deoarece avem idei bune pentru dvs.


Scrierea Dockerfile-ului

Un Dockerfile este o rețetă despre cum să construiți o לדמיין את Docker. Prima informație pe care o vom învăța aici este că trebuie să ne bazăm imaginea pe o altă imagine, deci vom folosi cea oficială pentru Redmine

מאת Redmine

נסיון ראשוני ל-Dockerfile-ului va baza או imaginea noastră pe cea mai recentă și cea mai bună imagine, 4.1.0 în momentul scrierii. Deoarece acest lucru va lua orice versiune este cea mai recentă, este posibil să preferați să utilizați o versiune specifică pentru a evita versiuni noi neașteptate care pot strica construirea acestei imagini

מ- Redmine: 4.1.0


Folosind Git pentru a obține componente

În majoritatea cazurilor, themele și plugin-urile au depozite Git de unde putem descărca cel mai recent cod. Acesta este cazul pentru următoarele trei componente.

Imaginea de bază Redmine vine fără Git, dar îl putem adăuga la imagine în felul următor:

הפעל התקנת GIT

Aceasta va fi executată atunci când imaginea este construită și vă va permite să utilizați Git în instrucțiunile următoare.

תמה גיטמייק: aceștia recomandă clonarea repo-ului lor ישיר

הפעל שיבוט git https://github.com/makotokw/redmine-theme-gitmike.git ציבור / נושאים / gitmike

Linia va salva proiectul clonat în folderul corespunzător public/themes

Ascunde bara laterală: הליך עזר ליישום ו-plugin-urilor. Acesta עכשיו נחוץ דיcât plasarea folderului clonat în folderul plugin-urilor

הפעל שיבוט git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

הלוח של Lipirea imaginii din: Acesta pare, de asemenea, a fi procedura tipică, clonarea repo-ului și sunteți gata să mergeți

הפעל שיבוט git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

דאר דאצ'ה citiți puțin mai mult, veți vedea că "se recomandă instalarea gem-ului RMagick, altfel imaginile atașate nu vor fi afișate în fișierele PDF exportate". החלטת, בהצטיינות? Ar trebui să fie la fel de ușor ca

הפעל פנינה להתקין

Dar probabil știți că gem-ul trebuie construit înainte de a putea fi instalat, deci trebuie să instalați unele pachete înainte de a instala gem-ul. Linia de care aveți nevoie este

RUN apt להתקין -ה build-חיוני imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       & & פנינה להתקין rmagick

Toate într-o singură comandă, נפרד în două linii pentru lizibilitate.

התקן את התוסף המקורי של אל acestui עכשיו או גרסה פנטסטית של Redmine 4, עם מספר תוסף ב-GitHub כדי לטפל בפנים: הדבק RubyClickAP / clipboard_image_paste.


Adăugarea unui plugin או tmă dintr-o sursă descărcată

תמה A1 este un bun exemplu pentru a ilustra cazurile în care aveți sursa, dar nu și un URL pentru a descărca în timpul processului de construire. O opțiune în astfel de cazuri este de a furniza sursa processului de construire. Astfel, conținutul este adăugat la imagine fără a fi descărcat

COPY a1 ציבורי / נושאים / a1

Aceasta necesită ca folderul a1 să fie în același loc cu fișierul Dockerfile.

Acum sunteți pregătit să construiți imaginea, deci deschideți un terminal unde se află fișierul Dockerfile și executați

docker build - my-redmine.

După construire, veți putea rula imaginea cu

docker run -it -p 3000: 3000 - שם my-redmine my-redmine

גישה ל-http://localhost:3000 עבור Redmine-ul personalizat!

Redmine după התאמה אישית


Câteva sfaturi pentru a adăuga mai multe plugin-uri

אם יש לך תוסף נוסף, אפשר להשתמש ב-Redmine למיכל. אם יש צורך בהתקנה או תקנת תיקון. Mai întâi, rulați o instanță eliminabilă de Redmine cu

הפעלת docker - rm -d -p 3000: 3000 - name test-redmine redmine

și apoi intrați în instanță cu

מבצעים של דוקר - מבחן redmine bash

Acolo puteți התקן את מערכת ההפעלה של pachetele, gem-uri או rula migrații. Doar amintiți-vă pașii astfel încât să le puteți adăuga la fișierul Dockerfile!


Încărcarea imaginii התאמה אישית ב- Docker Hub

תארו לעצמכם טיפול ב-tocmai ați construit-o este disponibilă doar în medium local. האם יש מקום למחסום או למלא פנים? Desigur, puteți încărca Dockerfile și fișierele aferente într-un repo git, Iar cei interresați pot construi imaginea singuri. Dar Docker vă permite, de asemenea, să încărcați imaginea construită în registrul lor. Pentru asta, creați un cont în hub.docer.com și creați, de asemenea, un depozit pentru imaginea dvs. Apoi, conectați-vă în terminal astfel:

כניסה למעגן

Etichetați imaginea astfel încât să poată fi încărcată în depozitul dvs.

תג הדוקר my-redmine: האחרונה של lcofre / redmine: האחרונה

și încărcați-o astfel

לדחוף דוקר lcofre / redmine: אחרון

דמיינו את Docker ב-Docker הרשום

Acum oricine poate încerca imaginea dvs. făcând

מפעיל docker -it -p 3000: 3000 - שם my-redmine lcofre / redmine

אטאט! התקן את Redmine הסטנדרטי עבור גישה אישית ורישום ב-Docker. Vă rugăm să împărtășiți comentariile sau întrebările dvs. מאי ג'וס.


Reducerea dimensiunii imaginii Docker

Veți constata că Dockerfile דין ריפו a unit multe linii într-una singură. אני רוצה להמליץ ​​על דוקר על פניו לדמיין מאי מיקי. Puteți găsi acest sfat și altele în https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

מומלץ מאוד להקטין את גודל הסופי של הדמיון ולהשתמש ב-Alpine versiunea ב-Redmine

מ Redmine: אלפיני

Alpine este או distribution Linux diferită. ניתן להשתמש ב-apk.

Un ultim sfat: pachetele pe care le-am instalat cu apt în Dockerfile nu mai sunt necesare după ce imaginea este construită. תרגומים אחרים ניתן להשתמש בבניית מסמכים רבים: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Practica de a menține או לדמיין את Docker de dimensiuni mici ajută în special atunci cand se mărește numărul de instanțe, dar צמצם și suprafața de atac a imaginii dvs.

עדכון האחרון של Redmine? Ușoară.

מידע על מכשירי פוטר pentru planificarea, אזורי תנועה ושליטה מושלמת על תוכנת ניהול אינטגרונית.

Descoperiți Easy Redmine

Încercați Easy Redmine în 30 de zile de încercare gratuită

פונקציות שלמות, הגנה על SSL, גיבוי עזר, ב-geocalizarea כלומר.