Hur gör du din egen anpassade Redmine Docker-bild.
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.