gr
Γλώσσα
  • 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

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

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

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

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

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

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

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


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

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

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

Χρήση του Git για τη λήψη των στοιχείων

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

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

RUN apt install -y git

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

Θέμα Gitmike: συνιστούν να κλωνοποιήσετε απευθείας το αποθετήριό τους

RUN git clone https://github.com/makotokw/redmine-theme-gitmike.git public/themes/gitmike

Η γραμμή θα αποθηκεύσει το κλωνοποιημένο έργο στον κατάλληλο φάκελο public/themes

Απόκρυψη πλευρικής γραμμής: Η ίδια διαδικασία μπορεί να εφαρμοστεί και στα πρόσθετα. Αυτό απαιτεί μόνο να τοποθετήσετε τον κλωνοποιημένο φάκελο στον φάκελο των προσθέτων

RUN git clone https://gitlab.com/bdemirkir/sidebar_hide.git plugins/sidebar_hide

Επικόλληση εικόνας από το πρόχειρο: Αυτό φαίνεται επίσης να είναι η τυπική διαδικασία, κλωνοποιήστε το αποθετήριο και είστε έτοιμοι να πάτε

RUN git clone https://github.com/RubyClickAP/clipboard_image_paste.git plugins/clipboard_image_paste

Αλλά αν διαβάσετε λίγο περισσότερο θα δείτε ότι "συνιστάται να εγκαταστήσετε το πακέτο RMagick, διαφορετικά οι επισυναπτόμενες εικόνες δεν θα εμφανίζονται στα αρχεία PDF που εξάγονται". Πώς το κάνουμε αυτό; Θα πρέπει να είναι τόσο εύκολο όσο

RUN gem install rmagick

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

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

       && gem install rmagick

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

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


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

Το θέμα A1 είναι ένα καλό παράδειγμα για να επεξηγήσει τις περιπτώσεις όπου έχετε την πηγή, αλλά όχι μια διεύθυνση URL για να την κατεβάσετε κατά τη διάρκεια της διαδικασίας κατασκευής. Ένας τρόπος σε περιπτώσεις όπως αυτή είναι να παρέχετε την πηγή στη διαδικασία κατασκευής. Με αυτόν τον τρόπο το περιεχόμενο προστίθεται στην εικόνα χωρίς να το κατεβάζετε

COPY a1 public/themes/a1

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

Τώρα είστε έτοιμοι να κατασκευάσετε την εικ

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

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

docker login

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

docker tag my-redmine:latest lcofre/redmine:latest

και ανεβάστε την ως εξής

docker push lcofre/redmine:latest

Η εικόνα Docker στον κατάλογο Docker

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

docker run -it -p 3000:3000 --name my-redmine lcofre/redmine

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


Μείωση του μεγέθους της εικόνας Docker

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

Μια άλλη σύσταση για να μειώσετε το τελικό μέ

Η απόλυτη αναβάθμιση του Redmine; Εύκολη.

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

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

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

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