Kuidas luua oma kohandatud Redmine Dockeri pilt
Redmine enne kohandamist
Μάρκους: Redmine'i algne docker on saadaval aadressil https://hub.docker.com/_/redmine. Siit leiate ka head juhised, kuidas täita välise andmebaasi ja kinnitada väliseid kaustu (pluginatega installimiseks).
Kui olete minu sarnane ja eelistate otse näha kohandatud Redmine Dockeri koodi, võite minna aadressile github.com/lcofre/redmine ja vaadata Dockerfile'i.
Redmine Dockeri pilt on hea lähtepunkt, kuigi tõenäoliselt soovite seda kohandada oma meelepäraste pluginatega ja teemadega. Selles juhendis loome Dockeri pildi ametliku põhjal, lisame mõned teemad ja pluginad ning laadime selle dockeri registrisse üles.
Lihtsuse huvides ei kasuta me väliseid andmebaase, vaid Redmine'i konteineri sisemist andmebaasi. Tootmiskeskkonnas soovitatakse siiski luua eraldi salvestusmahuti.
Pluginad ja teemad
Valisime mõned pluginad ja teemad, et näidata erinevaid viise nende lisamiseks Redmine'ile:
- Peida küljepaan, plugin, mis võimaldab rohkem ekraaniruumi, eriti probleemide kirjutamisel
- Kleebi lõikelaualt, et lisada ekraanipilte lõikelaua kleepimise teel faili valimise asemel
- A1 ja Gitmike, kaks teemat, mis muudavad kasutajaliidese välimust
Jätame välja pluginad, mis nõuavad andmebaasi migratsiooni, kuna vajate eelnevalt olemasolevat andmebaasi. Kui soovite installida pluginat, mis vajab migratsiooni, siis palun kommenteerige allpool, kuna meil on teile häid ideid.
Dockerfile'i kirjutamine
Dockerfile on retsept Dockeri pildi loomiseks. Esimene fakt, mida siin õpime, on see, et peame oma pildi loomiseks kasutama mõnda muud pilti, seega kasutame Redmine'i ametlikku pilti
ΑΠΟ Redmine
Selle Dockerfile'i esimene rida põhineb uusimal ja suurepärasemal pildil, kirjutamise ajal versioon 4.1.0. Kuna see haarab alati uusima versiooni, võite eelistada kasutada konkreetset versiooni, et vältida ootamatuid uusi versioone, mis võivad selle pildi ehituse rikkuda
ΑΠΟ Redmine: 4.1.0
Komponentide hankimine Git'i abil
Enamikul juhtudel on teemadel ja pluginatel Git'i hoidlad, kust saame alla laadida viimase koodi. See kehtib järgmiste kolme komponendi kohta.
Põhiline Redmine'i pilt ei sisalda Git'i, kuid saame selle pildile lisada järgmiselt
RUN apt install -y git
See käivitatakse pildi ehitamisel ja võimaldab teil kasutada Git'i järgmistes juhistes.
Gitmike teema: nad soovitavad kloonida oma repositooriumi otse
Εκτελέστε τον κλώνο git https://github.com/makotokw/redmine-theme-gitmike.git δημόσια / θέματα / gitmike
Rida salvestab kloonitud projekti vastavasse kausta public/themes
Küljepaneeli peitmine: Sama protseduuri saab rakendada ka pluginatele. Selleks pole vaja muud kui kloonitud kausta paigutamine pluginate kausta
Εκτελέστε τον κλώνο git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide
Lõikelaua pildi kleepimine: See tundub samuti tavaline protseduur, kloonige repositoorium ja olete valmis
Εκτελέστε τον κλώνο git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste
Kuid kui te loete veidi rohkem siis näete, et "soovitatakse installida RMagicki gem, vastasel juhul ei kuvata manustatud pilte eksporditud PDF-failides". Kuidas me seda teeme? See peaks olema sama lihtne kui
RUN gem εγκατάσταση rmagick
kuid tõenäoliselt teate, et gem tuleb ehitada enne selle installimist, seega peate enne gem'i installimist installima mõned paketid. Tegelikult vajate järgmist rida
RUN apt install -y build-sential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \
&& gem εγκατάσταση rmagick
Kõik ühes käskluses, kahele reale jaotatuna parema loetavuse huvides.
Selle pistikprogrammi algne autor ei paku versiooni Redmine 4 jaoks, kuid pistikprogrammi nime otsing GitHubis viis mind projekti, mis seda teeb: RubyClickAP / clipboard_image_paste.
Pistiku või teema lisamine allalaaditud lähtekoodist
A1 teema on hea näide juhtudest, kus teil on lähtekood, kuid mitte URL-i allalaadimiseks ehitusprotsessi ajal. Üks võimalus sellistel juhtudel on lähtekood anda ehitusprotsessile. Sel viisil lisatakse sisu pildile ilma selle allalaadimiseta
COPY a1 δημόσιο / θέματα / a1
Selleks peab a1 kaust olema samas kohas, kus Dockerfile asub.
Nüüd olete valmis oma pilti ehitama, avage terminal seal, kus teie Dockerfile asub, ja käivitage
docker build -t my-redmine.
Pärast ehitamist saate oma pildi käivitada
docker run -it -p 3000: 3000 --όνομα my-redmine my-redmine
Minge aadressile http://localhost:3000, et näha oma kohandatud Redmine'i!
Redmine pärast kohandamist
Mõned näpunäited rohkemate pistikute lisamiseks
Uute pistikute proovimiseks on alati parem kasutada värskeid Redmine'i konteinereid. Nii sain aru, et rmagick nõuab mõnede pakettide installimist. Kõigepealt käivitage Redmine'i kõrvaldatav eksemplar järgmiselt
docker run --rm -d -p 3000: 3000 --name test-redmine redmine
ja sisestage seejärel eksemplar järgmiselt
docker exec -it test -redmine bash
Seal saate installida operatsioonisüsteemi pakette, gem'e või käivitada migratsioone. Lihtsalt pidage meeles sammud, et saaksite need oma Dockerfile'isse lisada!
Oma kohandatud pildi üleslaadimine Docker Hubi
Pilt, mille sa just ehitasid, on saadaval ainult sinu kohalikus keskkonnas. Mis siis, kui soovid seda teistele kättesaadavaks teha, näiteks kõigile? Muidugi, saad üles laadida Dockerfile'i ja sellega seotud failid git repo-sse ning huvitatud isikud saavad ise pildi ehitada. Kuid Docker võimaldab sul ka üles laadida ehitatud pildi nende registrisse. Selleks loo konto aadressil hub.docker.com ja loo ka oma pildi jaoks repositoorium. Seejärel logi terminalis sisse järgmiselt
σύνδεση στο docker
Märgista oma pilt, et see saaks üles laadida sinu repositooriumisse
docker tag my-redmine: τελευταία lcofre / redmine: τελευταία
ja lükka see üles järgmiselt
docker push lcofre / redmine: τελευταία
Dockeri pilt Dockeri registris
Nüüd saab igaüks sinu pilti proovida, tehes järgmist
docker run -it -p 3000: 3000 --όνομα my-redmine lcofre / redmine
See on kõik! Nii saad minna tavalisest Redmine'i installist isikupärastatud versioonini, mis on kättesaadav Dockeri registris. Palun jaga oma kommentaare või küsimusi allpool.
Dockeri pildi suuruse kärpimine
Märkad, et repo-s olev Dockerfile ühendas paljud read üheks. See on Dockeri soovitus, et saada väiksemaid pilte. Saad leida selle ja teisi nõuandeid aadressilt https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
Veel üks soovitus lõppsuuruse vähendamiseks on kasutada Redmine'i alpine versiooni
ΑΠΟ Redmine: αλπικό
Alpine on erinev Linuxi distributsioon. Selle asemel, et kasutada pakettide installimiseks apt-i, pead kasutama apk-d.
Viimane näpunäide: Dockerfile-s apt-ga installitud pakette pole enam pärast pildi ehitamist vaja. Saad järgida parimat tava, kasutades mitmeastmelisi ehitusi: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds
Väikese suurusega Dockeri pildi hoidmise tava aitab eriti siis, kui suurendad eksemplaride arvu, kuid vähendab ka rünnaku pinda sinu pildil.
Η απόλυτη αναβάθμιση του Redmine; Ανετα.
Αποκτήστε όλα τα ισχυρά εργαλεία για τέλειο σχεδιασμό, διαχείριση και έλεγχο έργων σε ένα λογισμικό.