Hvordan gør du din egen tilpassede Redmine Docker-billede.
Redmine før tilpasning
se ud: Redmine native docker kan findes op https://hub.docker.com/_/redmine. Her finder du gode instruktioner om, hvordan du kan bruge en ekstern database til at oprette en ekstern database (som plug-ins kan installeres).
Som du, net som jeg, koden til at bygge af en tilpasset Redmine Docker-billede direkte vil se, kan du github.com/lcofre/redmine gå en Dockerfile-fil gennemsyn.
Redmine Docker-billedet er et godt startpunkt, selvom du sandsynligvis vil tilpasse plug-ins og temaer til din smag. I denne manual vil vi bygge et Docker-billede på grundlag af den officielle version, enkelte temaer og plug-ins tilføjes og uploades til docker-registret.
For de envoud vil vi ingen ekstern database bruge, men en intern database i Redmine-containeren selv. For en produktionsomgivelse er det dog råd om en samlet opslagscontainer til at lægge.
Plug-ins og temaer
Vi har et par plug-ins og temaer valgt til forskellige måder, der illustreres på Redmine, der skal tilføjes:
- Verberg sidebalk, et plug-in til at lave mere skærmrum, især ved at skrive problemer
- Plak klembord, om skærmbilleder ved at tilføje en dør til at klistre fra klembord på plads for at vælge en fil
- A1 en Gitmike, to temaer om det ydre af UI skal ændres
Vi lukker plug-ins til en database-migrering, fordi du har brug for en eksisterende database. Sidst nedenunder en kommentar bagefter, som du har et plug-in, skal der installeres, som migrationerne kræves, fordi vi har gode ideer til dig.
Skriver Dockerfile-filen
En Dockerfile er en recept til opbygning af et Docker-billede. Det første faktum, at vi her skal lære, er, at vi skal basere os på et andet billede, så vi vil det officielle billede for Redmine bruge
FRA Redmine
Denne første regel af Dockerfile-filen vil være billedbaseret på det nyeste og bedste billede, 4.1.0 på det tidspunkt, hvor du skriver. Fordi denne nye version er pakt, kan du vælge en specifik version, der skal bruges til uforudsete nye versioner, som kan afbryde byggeriet af dette billede
FRA Redmine: 4.1.0
Brug Git til at få de komponenter
I de fleste tilfælde har temaer og plugins git-repositories, hvor vi kan downloade den nyeste kode. Dette er tilfældet for de næste tørre komponenter.
Redmine-billedet bliver leveret uden git, men vi kan på denne måde tilføje et billede
KØR apt installation -y git
Dette udføres, når billedet er bygget og stiller dig i stand til at bruge de følgende instruktioner.
Gitmike-tema: ze raden aan om hun repo direct te klonen
Kør git klon https://github.com/makotokw/redmine-theme-gitmike.git offentlig / temaer / gitmike
Denne regel åbner projektet for det korrekte offentlige kort/temaer
Sidebar verbergen: Selvde proceduren kan anvendes på plugins. Dette kræver ikke mere, og det skal placeres på kortet i plugins-kortet
Kør git klon https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide
Udklipsholder-afbilleder steder: Det ligner også de typiske procedurer, der er, kloon de repo en je bent klar om at gå
Kør git klon https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste
Men som je en smule mere læst du kan se, at "hvordan en RMagick-gem skal installeres, ellers bliver tilføjede billeder ikke vist i eksporterede PDF-filer". Så hvordan gør vi det? Det skulle så enkelt være også
RUN perle installer rmagick
men du ved sandsynligvis, at en ædelsten skal bygges, før denne kan blive installeret, så skal du installere en pakke, før den er installeret. Den regel, du virkelig har brug for, er
Kør apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \
&& perleinstallere rmagick
Allemaal i én opgave, fordelt over twee regler for læselighed.
Den oprindelige auteur af dette plugin tilbyder ingen version af Redmine 4, men en søg efter pluginnavnet i GitHub giver mig et projekt, der gør: RubyClickAP / clipboard_image_paste.
Et plugin af tema tilføje fra en downloadet bron
Het A1-tema er et godt eksempel på de tilfælde, der er illustreret, hvor du har en bron, men ingen URL til download af byggeprocessen. En mulighed i tilfælde, hvor denne er en bron til levering af byggeprocessen. På den måde bliver indholdet på billedet tilføjet uden denne download
KOPI a1 offentlig / temaer / a1
Her skal et a1-map på den samme plads stå som en Dockerfile-fil.
Nu er du klar til at bygge et billede, så åben en terminal, hvor din Dockerfile kan føres ud
docker build -t min-redmine.
Zodra er bygget, kan du udføre dit billede
docker run -it -p 3000: 3000 - navn min-redmine min-redmine
Gå til http://localhost:3000 for at se din tilpassede Redmine!
Redmine na tilpasning
Enkelte tips om flere plugins til at tilføje
Hvis nye plugins kan prøves, er de altid bedre til at bruge en ny Redmine-beholder. Så kom jeg til, hvor rmagick enkelte pakker skulle installeres. Voer først et wegwerpeksemplar af Redmine uit met
docker run --rm -d -p 3000: 3000 - navn test-redmine redmine
en ga derefter til instansen
docker udfører -det test-redmine bash
Du kan installere en OS-pakke, udføre ædelstensinstallationer af migrationer. Husk blot de trin, så du kan tilføje din dockerfil!
Du tilpasser uploadet billede til Docker Hub
Billedet, som du har bygget, er kun tilgængeligt for dine lokale omgivelser. Hvad er det som er tilgængeligt, vil vi gøre for andre, hvis vi siger for alle? Det er naturligvis kun en Dockerfile og relaterede filer, der uploades til en git-repo og kan blive interesseret i selv opbygningen. Men Docker står også om det byggede billede, hvor du kan registrere dig for at uploade det. Opret en konto på hub.docker.com og lav også et lager til dit billede. Log derefter ind på terminalen som følger
docker-login
Mærk billedet, så denne kan overføres til din repo
docker tag my-redmine: seneste lcofre / redmine: seneste
en push det som følger
docker push lcofre / redmine: seneste
De Docker-billeder i Docker-registeret
Nu kan alle have et billede, der er ude af forsøget, hvis det næste skal gøres
docker run -it -p 3000: 3000 - navn my-redmine lcofre / redmine
Det er det! Der er en standard Redmine-installation til en personlig version, der er tilgængelig i Docker-registret. Del også dine bemærkninger til spørgsmål nedenfor.
Formatet af Docker-afbilleder-værkleinen
Du skal mærke det Dockerfil i repoen veel regels heeft samengevoegd tot één. Dette er en anbefaling af Docker til at lave mindre billeder. Du kan råd og andre finde op https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
Nog en anbefaling om den sidste størrelse af billedet og reduceret, er en alpine version af Redmine til at bruge
FRA Redmine: alpin
Alpine er en anden Linux-distribution. I stedet for apt skal du bruge pakken til at installere, skal du bruge apk.
Noget et sidste tip: de pakker, vi har installeret med apt i Dockerfilen, er ikke mere nødvendige, når billedet er bygget. Du kan de bedste praksis følge af brugen af multi-stage builds: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds
De praksis om en lille Docker-afbildning, der kan bevares, især ved hjælp af opskæring af et antal instanser, men formindsk også den overskydende overflade på billedet.
Den sidste Redmine-opgradering? Makkelijk.
Kryd alle kraftfulde værktøjer til perfekt projektplanlægning, -styring og -kontrol i én software.