en
Γλώσσα
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
Μετάφραση AI
  • ee
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Πώς να δημιουργήσετε την προσαρμοσμένη σας εικόνα Redmine Docker

6/16/2020
8 λεπτά
Λούκα Μπέγια
Το Redmine είναι ένα από τα πιο δημοφιλή εργαλεία διαχείρισης έργων και παρακολούθησης προβλημάτων. Εάν το δοκιμάσατε ή έπρεπε να το εγκαταστήσετε σε περιβάλλον παραγωγής, πιθανότατα γνωρίζετε επίσης ότι υπάρχει μια επίσημη εικόνα docker που απλοποιεί σημαντικά την εγκατάσταση και την κλιμάκωση για περιβάλλοντα υψηλής ζήτησης.

Redmine πριν από την προσαρμογή

Note: Το Redmine εγγενές λιμενεργάτη μπορεί να βρεθεί στο https://hub.docker.com/_/redmine. Εδώ μπορείτε επίσης να βρείτε καλές οδηγίες για το πώς να συμπληρώσετε μια εξωτερική βάση δεδομένων και να προσαρτήσετε εξωτερικούς φακέλους (για να μπορείτε να εγκαταστήσετε πρόσθετα).

Εάν είστε σαν εμένα και προτιμάτε να βλέπετε άμεσα τον κωδικό για τη δημιουργία μιας προσαρμοσμένης εικόνας Redmine Docker, μπορείτε να μεταβείτε στη διεύθυνση github.com/lcofre/redmine και ελέγξτε το Dockerfile.

Η εικόνα του Redmine Docker είναι ένα καλό σημείο εκκίνησης, αν και ίσως θέλετε να το προσαρμόσετε με πρόσθετα και θέματα που σας αρέσουν. Με αυτόν τον τρόπο, θα δημιουργήσουμε μια εικόνα Docker με βάση την επίσημη, θα προσθέσουμε μερικά θέματα και προσθήκες και θα την ανεβάσουμε στο μητρώο του προγράμματος σύνδεσης.

Για λόγους απλότητας, δεν θα χρησιμοποιήσουμε μια εξωτερική βάση δεδομένων αλλά μια εσωτερική βάση δεδομένων στο ίδιο το κοντέινερ Redmine. Ωστόσο, για ένα περιβάλλον παραγωγής, συνιστάται να δημιουργήσετε ένα ειδικό δοχείο αποθήκευσης.


Πρόσθετα και θέματα

Επιλέξαμε μερικά πρόσθετα και θέματα για να παρουσιάσουμε ποικίλους τρόπους προσθήκης τους στο Redmine:

  • Απόκρυψη πλευρικής γραμμής, ένα πρόσθετο που επιτρέπει περισσότερο χώρο στην οθόνη, ειδικά όταν γράφετε ζητήματα
  • Επικόλληση πρόχειρου, για να επισυνάψετε στιγμιότυπα οθόνης που επικολλούνται από το πρόχειρο αντί να επιλέξετε ένα αρχείο
  • A1 και Gitmike, δύο θέματα για να αλλάξετε την εμφάνιση της διεπαφής χρήστη

Εξαιρούμε προσθήκες που απαιτούν μετεγκατάσταση βάσης δεδομένων, καθώς χρειάζεστε προϋπάρχουσα βάση δεδομένων. Παρακαλώ σχολιάστε παρακάτω εάν πρέπει να εγκαταστήσετε ένα πρόσθετο που χρειάζεται μετεγκαταστάσεις, καθώς έχουμε καλές ιδέες για εσάς.


Γράφοντας το Dockerfile

Το Dockerfile είναι μια συνταγή για τον τρόπο δημιουργίας μιας εικόνας Docker. Το πρώτο γεγονός που θα μάθουμε εδώ είναι ότι πρέπει να βασίσουμε την εικόνα μας σε κάποια άλλη εικόνα, οπότε θα χρησιμοποιήσουμε την επίσημη για το Redmine

ΑΠΟ Redmine

Αυτή η πρώτη γραμμή του Dockerfile θα βασίσει ή θα απεικονίσει την τελευταία και μεγαλύτερη εικόνα, 4.1.0 τη στιγμή της σύνταξης. Καθώς αυτό θα τραβήξει όποια έκδοση είναι πιο πρόσφατη, ίσως προτιμάτε να χρησιμοποιήσετε μια συγκεκριμένη έκδοση για να αποφύγετε απροσδόκητες νέες εκδόσεις που ενδέχεται να καταστρέψουν την κατασκευή αυτής της εικόνας

ΑΠΟ Redmine: 4.1.0


Χρησιμοποιώντας το Git για να λάβετε τα στοιχεία

Στις περισσότερες περιπτώσεις, τα θέματα και οι προσθήκες έχουν git αποθετήρια όπου μπορούμε να κατεβάσουμε τον πιο πρόσφατο κώδικα. Αυτό ισχύει για τα ακόλουθα τρία στοιχεία.

Η βασική εικόνα Redmine έρχεται χωρίς git, αλλά μπορούμε να την προσθέσουμε στην εικόνα με αυτόν τον τρόπο

RUN apt install -y 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 gem εγκατάσταση rmagick

αλλά πιθανότατα γνωρίζετε ότι το κόσμημα πρέπει να κατασκευαστεί πριν να μπορέσει να εγκατασταθεί, οπότε πρέπει να εγκαταστήσετε κάποια πακέτα πριν εγκαταστήσετε το στολίδι. Η γραμμή που πραγματικά χρειάζεστε είναι

RUN apt install -y build-sential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem εγκατάσταση rmagick

Όλα σε μία εντολή, χωρισμένα σε δύο γραμμές για αναγνωσιμότητα.

Ο αρχικός συντάκτης αυτής της προσθήκης δεν παρέχει μια έκδοση για το Redmine 4, αλλά μια αναζήτηση για το όνομα της προσθήκης στο GitHub με έφερε σε ένα έργο που κάνει: RubyClickAP / clipboard_image_paste.


Προσθήκη προσθήκης ή θέματος από μια ληφθείσα πηγή

Η Θέμα Α1 είναι ένα καλό παράδειγμα για να δείξετε τις περιπτώσεις όπου έχετε την πηγή, αλλά όχι μια διεύθυνση URL για λήψη κατά τη διαδικασία κατασκευής. Μια επιλογή σε τέτοιες περιπτώσεις είναι να παρέχετε την πηγή στη διαδικασία κατασκευής. Με αυτόν τον τρόπο το περιεχόμενο προστίθεται στην εικόνα χωρίς να το κατεβάσετε

COPY a1 δημόσιο / θέματα / a1

Αυτό απαιτεί το φάκελο a1 να βρίσκεται στην ίδια θέση με το Dockerfile.

Τώρα είστε έτοιμοι να δημιουργήσετε την εικόνα σας, οπότε ανοίξτε ένα τερματικό όπου βρίσκεται το Dockerfile και εκτελέστε το

docker build -t my-redmine.

Μόλις κατασκευαστεί θα μπορείτε να εκτελέσετε την εικόνα σας

docker run -it -p 3000: 3000 --όνομα my-redmine my-redmine

Προχωρήστε και ανοίξτε το http: // localhost: 3000 για να δείτε το προσαρμοσμένο Redmine!

Redmine μετά την προσαρμογή


Μερικές συμβουλές για την προσθήκη περισσότερων προσθηκών

Για να δοκιμάσετε νέες προσθήκες, είναι πάντα καλύτερο να χρησιμοποιείτε ένα νέο δοχείο Redmine. Έτσι συνειδητοποίησα ότι το rmagick απαιτεί την εγκατάσταση ορισμένων πακέτων. Πρώτα, εκτελέστε μια απορρίψιμη παρουσία του Redmine με

docker run --rm -d -p 3000: 3000 --name test-redmine redmine

και μετά εισαγάγετε την παρουσία με

docker exec -it test -redmine bash

Εκεί μπορείτε να εγκαταστήσετε πακέτα λειτουργικών συστημάτων, πολύτιμους λίθους ή να εκτελέσετε μετεγκαταστάσεις. Απλώς θυμηθείτε τα βήματα για να τα προσθέσετε στο Dockerfile!


Μεταφόρτωση της προσαρμοσμένης εικόνας σας στο Docker Hub

Η εικόνα που μόλις δημιουργήσατε είναι διαθέσιμη μόνο στο τοπικό σας περιβάλλον. Τι γίνεται αν θέλετε να το κάνετε διαθέσιμο σε άλλους, ας πούμε σε όλους; Φυσικά, μπορείτε να ανεβάσετε το Dockerfile και σχετικά αρχεία σε ένα git repo και αυτοί που ενδιαφέρονται μπορούν να δημιουργήσουν οι ίδιοι την εικόνα. Αλλά το Docker σάς επιτρέπει επίσης να ανεβάσετε την ενσωματωμένη εικόνα στο μητρώο τους. Για αυτό, δημιουργήστε έναν λογαριασμό στο hub.docker.com και δημιουργήστε επίσης ένα αποθετήριο για την εικόνα σας. Στη συνέχεια, συνδεθείτε στο τερματικό έτσι

σύνδεση στο docker

Προσθέστε ετικέτα στην εικόνα σας, ώστε να μπορεί να μεταφορτωθεί στο repo σας

docker tag my-redmine: τελευταία lcofre / redmine: τελευταία

και σπρώξτε το έτσι

docker push lcofre / redmine: τελευταία

Η εικόνα Docker στο μητρώο Docker

Τώρα οποιοσδήποτε μπορεί να δοκιμάσει την εικόνα σας κάνοντας

docker run -it -p 3000: 3000 --όνομα my-redmine lcofre / redmine

Αυτό είναι! Έτσι πηγαίνετε από μια τυπική εγκατάσταση Redmine σε μια εξατομικευμένη έκδοση που είναι προσβάσιμη στο μητρώο Docker. Μοιραστείτε τα σχόλια ή τις ερωτήσεις σας παρακάτω.


Περικοπή του μεγέθους εικόνας του Docker

Θα διαπιστώσετε ότι το Dockerfile στο repo ενώθηκαν πολλές γραμμές σε μία. Αυτή είναι μια πρόταση Docker για τη δημιουργία μικρότερων εικόνων. Μπορείτε να βρείτε αυτές τις συμβουλές και άλλους στο https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Μια άλλη πρόταση για τη μείωση του τελικού μεγέθους της εικόνας είναι να χρησιμοποιήσετε την αλπική έκδοση του Redmine

ΑΠΟ Redmine: αλπικό

Το Alpine είναι μια διαφορετική διανομή linux. Αντί να χρησιμοποιήσετε το apt για να εγκαταστήσετε πακέτα, πρέπει να χρησιμοποιήσετε το apk.

Μια τελευταία συμβουλή: τα πακέτα που εγκαταστήσαμε με το apt στο Dockerfile δεν χρειάζονται πια μετά την κατασκευή της εικόνας. Μπορείτε να ακολουθήσετε τη βέλτιστη πρακτική της χρήσης πολλαπλών σταδίων: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Η πρακτική της διατήρησης μιας εικόνας Docker μικρού μεγέθους βοηθά ειδικά όταν αυξάνεται ο αριθμός των παρουσιών, αλλά επίσης μειώνεται η επιφάνεια επίθεσης στην εικόνα σας.

Η απόλυτη αναβάθμιση του Redmine; Ανετα.

Αποκτήστε όλα τα ισχυρά εργαλεία για τέλειο σχεδιασμό, διαχείριση και έλεγχο έργων σε ένα λογισμικό.

Ανακαλύψτε το Easy Redmine

Δοκιμάστε το Easy Redmine σε δωρεάν δοκιμή 30 ημερών

Πλήρεις δυνατότητες, προστασία SSL, καθημερινά αντίγραφα ασφαλείας, στη γεωγραφική σας τοποθεσία