Hoe maak je eigen aangepaste Redmine Docker-afbeelding.
Redmine vóór aanpassing
Dávej si pozor: Redmine native docker kan worden gevonden op https://hub.docker.com/_/redmine. Podívejte se na pokyny k používání externích databází kunt vullen a externích mappen kunt koppelen (o zásuvných modulech, které jsou nainstalovány).
Als u, net als ik, de code voor het bouwen van een aangepaste Redmine Docker-image direct wilt zien, kunt u naar github.com/lcofre/redmine gaan en het Dockerfile-bestand bekijken.
Redmine Docker-image je een go startpunt, hoewel a het waarschijnlijk wilt aanpassen a plug-ins in the themate is aw smaak. V základním zpracování obrazu jsme vytvořili docker-image na základě oficiální verze, zahrnuli témata a zásuvné moduly, které jsou k dispozici a načítají se do docker-registru.
Většinu z nich jsme vytvořili externí databázi, která je součástí vnitřní databáze v kontejneru Redmine. Dosavadní produktivita je neustále řízena a neustále se šíří opslagcontainer op te zetten.
Zásuvné moduly v tématech
Používáme několik zásuvných modulů v tématických gekozenech, které jsou zobrazeny na webu Redmine:
- Verberg zijbalk, een plug-in om meer schermruimte mogelijk te maken, vooral bij het schrijven van problemen
- Plak klembord, om schermafbeeldingen bij te voegen door te plakken vanuit het klembord in plaats van een bestand te selecteren
- A1 en Gitmike, twee thema's om het uiterlijk van de UI te veranderen
Používáme plug-iny, které umožňují migraci databází, omyvatelé a nejlepší databáze nodig heeft. Laat hieronder een reakce achter als u een plug-in moet installeren die migraties nodig heeft, omdat we goede ideeën voor u hebben.
Het Dockerfile-nejlépe schrijven
Een Dockerfile je een recept veor het bouwen van een Docker-image. Het eerste feit dat we hier zullen leren, is date we ons beeld moeten baseren op een ander beeld, dus we zullen het officiële beeld voor Redmine gebruiken
Z Redmine
Deze eerste regel van het Dockerfile-bestand zal ons beeld baseren op het nouwste en beste beeld, 4.1.0 op het moment van schrijven. Omdat dit de nieuwste versie pakt, kunt u ervoor kiezen om een specifieke versie te gebruiken om onverwachte nieuwe versies te vermijden die de bouw van dit beeld kunnen breken
Z Redmine: 4.1.0
Gebruik Git om de componenten te krijgen
V de meeste gevallen hebben thema's en plugins git-repositories waar we de nouwste code kunnen downloaden. To je het geval voor de volgende suché komponenty.
Základem redmine-image wordt geleverd zonder git, maar we kunnen het op deze manier aan de image toevoegen
SPUSTÍTE apt install -y git
Dit wordt uitgevoerd wanneer de image wordt gebouwd en stelt u in staat om git te gebruiken in de volgende instructions.
Gitmike-téma: ze raden aan om hun repo direct te klonen
RUN git klon https://github.com/makotokw/redmine-theme-gitmike.git public / themes / gitmike
Deze regel slaat het gekloonde project op in de juiste map public/themes
Verbergen bočního panelu: Dezelfde procedure kan worden toegepast op plugins. Deze vereist niets meer dan het plaatsen van de gekloonde map in de plugins-map
RUN git klon https://gitlab.com/bdemirkir/sidebar_hide.git pluginy / sidebar_hide
Schránka-afbeelding plakken: Dit lijkt ook de typische procedure te zijn, kloon de repo en je bent klaar om te gaan
RUN git klon https://github.com/RubyClickAP/clipboard_image_paste.git pluginy / clipboard_image_paste
Maar als je een beetje meer leest zul je zien dat "het aanbevolen wordt om de RMagick-gem te installeren, anders worden bijgevoegde afbeeldingen net weergegeven in geëxporteerde PDF-bestanden". Dus hoe jsme dit? Het zou zo eenvoudig moeten zijn als
RUN gem nainstalovat rmagick
maar je weet waarschijnlijk dat de gem moet worden gebouwd voordat deze kan worden geïnstalleerd, dus je moet wat pakketten installeren voordat je de gem installeert. De regel die je echt nodig hebt is
SPUSTÍTE apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \
&& gem install rmagick
Allemaal in één opdracht, verdeeld over twee regels voor leesbaarheid.
Ověřený autor a plugin obsahuje verzi pro Redmine 4, která je součástí pluginů na GitHubu, vezměte si mě s daty projektu, která jsou k dispozici: RubyClickAP / clipboard_image_paste.
Een plugin thema toevoegen vanuit een gedownloade bron
The A1-téma is een goed voorbeeld om de gevallen te illustreren waarin u de bron heeft, maar geen URL om tijdens het bouwproceste te downloaden. Een optie in gevallen als deze je om de bron aan het bouwproceste te leveren. Op die manier wordt de inhoud aan de image toegevoegd zonder deze te downloaden
KOPIE a1 veřejné / témata / a1
Hierbij moet de a1-map op dezelfde plaats staan als het Dockerfile-bestand.
Nu ben je klaar om je image te bouwen, dus open een terminal waar je Dockerfile staat en voer uit
stavitel doku -t můj-redmine.
Zodra het is gebouwd, kunt u uw image uitvoeren met
docker run -it -p 3000: 3000 - jméno my-redmine my-redmine
Zde je http://localhost:3000 om aangepaste Redmine te zien!
Redmine aanpassing
Enkele tipy na další pluginy toe te voegen
Od nových pluginů, které jsou pro vás připraveny, je lepší než nový kontejner Redmine te gebruiken. Po dokončení instalace. Každý z nás se setkal s Redmine
docker run - rm -d -p 3000: 3000 - jméno test-redmine redmine
en ga vervolgens naar de instantie met
docker exec -it test -redmine bash
Chcete-li nainstalovat balík OS, můžete nainstalovat drahokamy migrací. Onthoud gewoon de stappen zodat u ze aan uw Dockerfile kunt toevoegen!
Je aangepaste afbeelding uploaded to Docker Hub
De afbeelding die je zojuist hebt gebouwd is alleen beschikbaar voor je lokale omgeving. Wat als je het beschikbaar wilt maken voor anderen, late we zeggen voor iedereen? Natuurlijk kun je de Dockerfile en gerelateerde bestanden uploaden naar een git-repo en kunnen geïnteresseerden de afbeelding zelf bouwen. Maar Docker staat je ook toe om de gebouwde afbeelding naar hun register te uploaden. Maak daarvoor een account aan op hub.docker.com en maak ook een repository aan voor is afbeelding. Log vervolgens in op de terminal als volgt
přihlášení do doku
Tag je afbeelding zodat deze kan worden geüpload naar je repo
docker tag my-redmine: latest lcofre / redmine: latest
en push het als volgt
dokovací push lcofre / redmine: nejnovější
De Docker-afbeelding v het Docker-register
Nu kan iedereen je afbeelding uitproberen door het volgende te doen
docker run -it -p 3000: 3000 - jméno my-redmine lcofre / redmine
To je het! Tato verze je standardně nainstalována Redmine a je v registru Dockerů. Deel alsjeblieft je opmerkingen vragen hieronder.
Formát od Docker-afbeelding verkleinen
Je zult merken dat de Dockerfile v de repo veel regels heeft samengevoegd tot één. To je úkosem od Dockera a jeho malých rozměrů. Je kunt dat advies en andere vinden op https://docs.docker.com/develop/develop-images/dockerfile_best-practices/
Nog een aanbeveling om de uiteindelijke grootte van de afbeelding te verminderen, is om de alpine-versie van Redmine te gebruiken
Z Redmine: alpine
Alpine je další linuxová distribuce. V plaats van apt te gebruiken om pakketten te installeren, moet je apk gebruiken.
Nog een laatste tip: de pakketten die we hebben geïnstalleerd met apt in de Dockerfile zijn niet meer nodig nadat de afbeelding is gebouwd. Je to nejlepší praxe pro vícestupňové sestavení: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds
De praktijk om een kleine Docker-afbeelding te behouden helpt vooral bij het opschalen van het antal instanties, maar vermindert ook het aanvalsoppervlak op je afbeelding.
Poslední upgrade Redmine? Makkelijk.
Používejte všechny nástroje pro dokonalé plánování projektů, ovládání a ovládání v één softwaru.