Hur gör du din egen anpassade Redmine Docker-bild.

6/16/2020
9 minuter
Lukáš Beňa.
Redmine är ett av de populäraste verktygen för projektledning och problemspårning. Om du har undersökt installerad installation i en produktionsomgivning, vet du förmodligen också att det är en officiell dockningsbild som är installerad och skalbarhet för omgivningar med hög efterfrågan och stark enkel.

Redmine före anpassning

Se upp: Redmine native docker kan hittas op https://hub.docker.com/_/redmine. Här hittar du goda instruktioner om hur du en extern databas kan fylla och extern mappa kan kopplas (om plugin-program kan installeras).

Om du, nät som jag, koden för att bygga en anpassad Redmine Docker-bild direkt vill se, kan du github.com/lcofre/redmine gå till dockerfile-filen.

Redmine Docker-bilden är en bra startpunkt, även om du sannolikt kommer att anpassa med plugin-program och tema för din smak. I den här handboken kommer vi att bygga en Docker-bild på grundval av den officiella versionen, några teman och plugin-program som läggs till och laddas upp till docker-registret.

För att kunna använda en extern databas, men en intern databas i Redmine-behållaren själv. För en produktionsomgivning är det dock råd om en gemensam lagringsbehållare för att sätta in.


Plug-ins och teman

Vi har ett par plug-ins och temat valda för olika sätt som ska illustreras på Redmine till att lägga till:

  • Verberg zijbalk, ett plugin-program för mer skärmutrymme som är möjligt att göra, särskilt för att skriva problem
  • Plak klembord, om bildskärmsbilder vid att lägga till dörren och klistra från skärmbilden på plats för att välja en fil
  • A1 en Gitmike, två temas om det yttre av UI ska ändras

Vi stänger plugin-program för en databasmigrering som krävs, eftersom du behöver en befintlig databas. Nedan följer en kommentar när du har ett plug-in som måste installeras som behövs för migrering eftersom vi har bra idéer för dig.


Skriver dockerfile-filen

En Dockerfile är en recept för att bygga en Docker-bild. Det första faktum att vi här kommer att lära oss, är att vi måste baseras på en annan bild, så vi kommer att ha den officiella bilden för Redmine att använda

FRÅN Redmine

Den här första regeln för Dockerfile-filen kommer att visas på bilden som baseras på den senaste och bästa bilden, 4.1.0 när du skriver. Eftersom den nya versionen har pakts, kan du välja en specifik version som ska användas för att skapa nya versioner för att kunna bryta byggandet av denna bild

FRÅN Redmine: 4.1.0


Använd Git för att få de komponenter

I de flesta fall har teman och plugins git-repositories där vi kan ladda ner den senaste koden. Detta är fallet för följande torra komponenter.

Grunden för Redmine-image levereras utan git, men vi kan det här sättet att lägga till bilden

KÖR apt installation -y git

Detta utförs när bilden byggs och ställs in för att du ska kunna använda följande instruktioner.

Gitmike-tema: ze raden aan om hun repo direkt te klonen

KÖR GIT-klon https://github.com/makotokw/redmine-theme-gitmike.git offentliga / themes / gitmike

Den här regeln släpper ut ett projekt på rätt karta offentliga/teman

Sidebar verbergen: Självdelad procedur kan tillämpas på plugins. Detta kräver inte mer och placeras på en karta i plugins-kartan

KÖR GIT-klon https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Urklipp-avbildande platser: Det tycks också vara en typisk procedur, kloon de repo och du är redo för att gå

KÖR GIT-klon https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Men als je en bit mer läst du kan se att "det måste installeras om RMagick-gemen ska installeras, annars bifogas bilder som inte visas i exporterade PDF-filer". Hur gör vi det? Det skulle så enkelt behövas

KÖR pärla installera rmagick

men du vet sannolikt att ädelstenen måste byggas innan den kan installeras, så du måste installera ett paket innan ädelstenen installeras. Regeln som du verkligen behöver är

KÖRA apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem installera rmagick

Allt i ett uppdrag, fördelat över två regler för läsbarhet.

Den ursprungliga författaren av detta plugin erbjuder ingen version för Redmine 4, men en sökning till pluginnamnet i GitHub ger mig ett projekt som väl gör: RubyClickAP / clipboard_image_paste.


Ett plugin för tema lägg till från en nedladdningsbar bron

Den A1-tema är ett bra exempel på fall där du har bron, men ingen URL för nedladdning av byggprocessen. En alternativ i fall som denna är en bron för byggprocessen som ska levereras. På sättet kan innehållet läggas till bilden utan att ladda ner den

COPY a1 public / teman / a1

Här måste en a1-map på samma plats finnas som en Dockerfile-fil.

Nu är jag klar med att bygga en bild, öppna en terminal där dockerfilen ska hämtas

docker build -t my-redmine.

Zodra det är byggt, kan du utföra din bild

docker run -it -p 3000: 3000 - namn min-redmine my-redmine

Gå till http://localhost:3000 för att se din anpassade Redmine!

Redmine na anpassning


Enkla tips om fler plugins till att lägga till

Om nya plugins för att prova, är det alltid bättre att använda en ny Redmine-behållare. Så kom jag efter att rmagick några paket som skulle installeras. Voer first a wegwerpexemplaar van Redmine uit met

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

sedan till instansen

docker exekvera -it test-redmine bash

Där kan du installera OS-paket, ädelstensinstallationer av migrationer. Kom ihåg bara stegen så att du kan lägga till din dockerfil!


Den anpassade bilden laddas upp till Docker Hub

Bilden som du har byggt är enbart tillgänglig för din lokala omgivning. Vad är det tillgängligt för att göra för andra, fördröjt vi säger för alla? Naturligtvis är dockerfilen och relaterade filer laddade upp till en git-repo och kan ansöka om självbyggande. Men Docker står också för att skapa en bild där du kan registrera dig för att ladda upp. Skapa ett konto på hub.docker.com och skapa ett arkiv för bilden. Logga sedan in på terminalen som följer

docker-inloggning

Tagga bilden så att denna kan laddas upp till din repo

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

en push det följer

docker push lcofre / redmine: senaste

De Docker-bilder i Docker-registret

Nu kan alla ha en bild som är utsökt genom att göra följande

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

Det är det! Så är en standard Redmine-installation till en personlig version som är tillgänglig i Docker-registret. Deel också dina kommentarer på frågorna nedan.


Formatet på Docker-bilden verkleinen

Du ska märka det Dockerfil i repo veel regels har samengevoegd till één. Detta är en rekommendation av Docker för att göra mindre bilder. Du kan råd och andra hitta op https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Nog en rekommendation om den sista storleken på bildens storlek, är en alpin version av Redmine för att använda

FRÅN Redmine: alpin

Alpine är en annan Linux-distribution. I platsen kan du använda paketet för att installera, måste apk användas.

Ett sista tips: de paket som vi har installerat med apt i Dockerfilen behövs inte längre efter att bilden har skapats. Du kan följa bästa praxis för att använda flerstegsbyggen: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Den praktiska användningen av en liten Docker-bild som hjälper till att bibehålla hjälp i synnerhet för att få tillgång till ett antal instanser, men minska också den ytliga ytan på bilden.

Den sista Redmine-uppgraderingen? Makkelijk.

Krijg alla kraftfulla verktyg för perfekt projektplanering, -hantering och -kontroll i en mjukvara.

Upptäck Easy Redmine

Testa Easy Redmine 30 dagar gratis

Fullständiga funktioner, SSL-beveiligd, dagliga säkerhetskopieringar, på din geografiska plats