Hur du skapar din anpassade Redmine Docker-bild

6/16/2020
8 minut
Łukasz Beňa.
Redmine är en av de mest populara verktygen för projektledning och ärendehantering. Om du har provat det eller var tvungen att installera det i en produktymiljö, weterynarz du förmodligen också att det finns en officiell dockerbild som i hög grad förenklar Installationen och skalningen för högtrafiksmiljöer.

Redmine wewnętrzne przejście

Obserwator: Redmine nativ docker może trafić na https://hub.docker.com/_/redmine. Här kan du också hitta bra instruktioner om hur du fyller på en extern databas och monterar externa mappar (för att kunna installera dollägg).

Om du är som jag och föredrar att direkt se koden för att bygga en anpassad Redmine Docker-bild, kan du gå do https://github.com/lcofre/redmine och kolla på Dockerfilen.

Redmine Docker-bilden är en bra utgångspunkt, aven om du förmodligen vill anpassa den medtilägg och teman som du gillar. I den här handleningen kommer vi att bygga en Docker-bild baserad på den officiella bilden, lägga do några teman och Tilleägg, och ladda upp den do docker-registret.

För enkelhetens czaszka kommer vi inte att använda en extern databas utan en intern databas i Redmine-behållaren själv. För en produktionsmiljö rekommenderas det dock att konfigurera en dedikerad lagringsbehållare.


Tillägg och teman

Vi har valt några Tilägg och teman för att ilustrera olika sätt att lägga do dem i Redmine:

  • Dölj sidofältet, etttilägg som ger mer skärmutrymme, särskilt när du skriver ärenden
  • Klistra w języku urklipp, för att bifoga skärmbilder genom att klistra in från urklippet istället för att välja en fil
  • A1 i Gitmike, två teman för att ändra utseeendet på gränssnittet

Vi utesluter Tilägg som kräver en databasmigration, eftersom du behöver en befintlig database. Kommentera nedan om du behöver installera ett dollägg som behöver migracjier, eftersom vi har bra idéer för dig.


Skriva Dockerfilen

En Dockerfil är ett recept på hur man bygger en Docker-bild. Det första fakturm vi kommer att lära oss här är att vi måste basera vår bild på någon annan bild, så vi kommer att använda den officiella för Redmine

Z Redmine

Denna första rad i Dockerfilen kommer att basera vår bild på den senaste och bästa bilden, 4.1.0 vid skrivandets tidpunkt. Eftersom detta kommer att hämta vilken wersja som är senast, kan du föredra att använda en specifik wersja för att undvika oväntade nya wersja som kan bryta byggandet av denna bild

Z Redmine: 4.1.0


Använda Git dla att hämta komponenterna

I de flesta fall har teman och dollägg git-repositorier där vi kan hämta den senaste koden. Detta gäller för följande tre komponenter.

Basbilden för Redmine kommer utan git, men vi kan lägga do det i bilden på följande sätt

Uruchom RUN apt install -y git

Detta kommer att köras när bilden byggs och kommer att dollåta dig att använda git i följande instruktioner.

Temat Gitmike: de rekommenderar att klona sitt repo direkt

URUCHOM klon git https://github.com/makotokw/redmine-theme-gitmike.git public / themes / gitmike

Raden kommer att spara det klonade projektet w rätt mapp public/themes

Dölj sidofältet: Samma procedura kan Untilämpas på Tilägg. Detta kräver inget mer än att placera den klonade mappen i Untiläggsmappen

URUCHOM klon git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Klistra w obrazach od urklipp: Detta verkar också vara den vanliga procedurn, klona repoet och du är redo att gå

URUCHOM klon git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Mężczyźni om du laser lite mer za pomocą polecenia „rekomenduje att installera RMagick-gemmet, annars visas inte bifogade bilder and eksporter PDF-fileer”. Så hur gör vi det? Det borde vara lika enkelt som

URUCHOM gem zainstaluj rmagick

men du weterynarz förmodligen att gemmet måste byggas innan det kan installeras, så du måste installera några paket innan du installerar gemmet. Den rad du verkligen behöver är

URUCHOM apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem zainstaluj rmagick

Allt i en enda kommando, uppdelat på två rader för läsbarhet.

Den ursprrungliga författaren do detta dollägg dohandahåller ingen wersja dla Redmine 4, mężczyźni pl sökning påtiläggets namn na GitHub ledde mig do ett projekt som gör det: RubyClickAP / clipboard_image_paste.


Lägga Until ett Tilägg eller tema från en nedladdad källa

Temat A1 är ett bra exempel för att ilustrera fall där du har källkoden, men inte en URL att ladda ner under byggprocessen. Ett alternativ i sådana fall är att dohandahålla källkoden do byggprocessen. På så sätt läggs innehållet aż bilden utan att ladda ner det

KOPIUJ a1 public / themes / a1

Detta kräver att a1-mappen finns på samma plats som Dockerfilen.

Nu är du redo att bygga din bild, så öppna en terminal där din Dockerfil är och kör

docker buduje -t my-redmine.

När den är byggd kan du köra din bild med

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

Możesz zobaczyć i zobaczyć http://localhost:3000 dla tego, co chcesz, Redmine!

Redmine po przejściu


Några wskazówki dotyczące att lägga do fler Tilägg

För att prova nya Tillagg är det alltid bättre att använda en ny Redmine-container. Det är så jag insåg att rmagick kräver att vissa paket installeras. Kör först en kassationsbar instans av Redmine med

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

och gå sedan w i instansen med

docker exec - it test-redmine bash

Możesz zainstalować pakiet OS-pakiet, klejnoty lub köra migreringar. Kom bara ihåg stegen så att du kan lägga do dem i din Dockerfil!


Ladda upp din anpassade image do Docker Hub

Bilden du precis byggde är endast Untilgänglig för din lokala miljö. Vad gör du om du vill göra den tillgänglig för andra, låt oss säga för alla? Självklart kan du ladda upp Dockerfilen i powiązane pliki do ett git-repo, lub intresserade kan bygga bilden själva. Men Docker Tillater också att du laddar upp den byggda bilden do rejestru deras. Aby to zrobić, skapa ett konto na hub.docker.com i skapa också ett repozytorium dla tego obrazu. Logga sedan w i terminalen så här

login dokera

Tagga din bild så att den kan laddas upp do ditt repo

tag dokera my-redmine: najnowsze lcofre / redmine: najnowsze

och pusha den så här

docker push lcofre / redmine: najnowszy

Dockerbilden i Dockerregistret

Nu kan vem som helst prova din bild genom att göra så här

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

Det är allt! Så här går du från w standardowej instalacji Redmine do wersji osobistej, która jest dostępna w Dockerregistret. Vänligen dela dina kommentarer eller frågor nedan.


Minska storleken på Dockerbilden

Du kommer att märka att Dockerfilen powtarzam har slagit samman många rader do en. Detta är ett Docker-rekomendacja dla att göra mindre bilder. Du kan hitta den rekommendationen och andra på https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

En annan rekomendacja dla att minska den slutliga storleken på bilden är att använda alpine-versionen av Redmine

FROM Redmine: alpejski

Alpine jest nową dystrybucją Linuksa. Istället for att använda apt for att installera paket måste du använda apk.

Oto następujące wskazówki: paketen vi installerade med apt i Dockerfilen behövs inte längre efter att bilden är byggd. Du kan följa bästa praxis genom att använda flerstegsbyggen: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Att hålla en liten storlek på Dockerbilden hjälper särskilt när antalet instanser skalas upp, men minskar också attackytan på din bild.

Den ultimata Redmine-uppgraderingen? Enkla.

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

Upptäck Easy Redmine

Prova Easy Redmine w okresie 30 dni za darmo

Pełna funkcja, SSL-skyddad, dagliga säkerhetskopior, na platformach geograficznych