Jak vytvořit vlastní Docker obraz Redmine.

6/16/2020
8 minutter
Lukáš Beňa
Redmine jedním z nejpopulárnějších nástrojů pro řízení projektů a sledování problémů. Pokud jste ho vyzkoušeli nebo museli nainstalovat v produkčním prostředí, pravděpodobně také víte, že existuje oficiální docker image, který výrazně zjednodušuje instalaci a švykalování pro.

Redmine před úpravou

Poznámka: Redmine nativní docker můžete najít na https://hub.docker.com/_/redmine. Du skal bruge den dobré instruks, og du skal bruge eksterne data og bruge eksterne složky (pro installation plugin).

Pokud jste jako já a raději vidíte kód pro vytvoření vlastního Redmine Docker obrázku, můžete jít na github.com/lcofre/redmine en zkontrolovat Dockerfile.

Obrázek Redmine Docker er velfungerende i bund, og det er nemt at bruge plugin-programmet og det er en god ide. V tomto návodu vytvoříme Docker obrázek založený na oficiálním obrázku, přidáme některá témata a pluginy and nahrajeme for do do docker registru.

Zjednodušeně řečeno, nebudeme používat eksterne databázi, ale interne databázi og samotném kontejneru Redmine. Producent prostředí je však vhodné nastavit dedikovaný úložný kontejner.


Pluginy og tema

Vybrali jsme několik pluginů a témat, abychom ilustrovali různé způsoby, jak je přidat do Redmine:

  • Skrýt postranní panel, plugin umožňující více prostoru na obrazovce, zejména při psaní problémů
  • Vložit ze schránky, připojit snímky obrazovky vkládáním ze schránky místo výběru souboru
  • A1 a Gitmike, dvě témata pro změnu vzhledu uživatelského rozhraní

Vylučujeme pluginy, které vyžadují migraci databáze, protože potřebujete předem existující databázi. Pokud potřebujete nainstalovat plugin, který potřebuje migrace, prosím, kommentujte níže, protože máme pro vás dobré nápady.


Psaní Dockerfile

Dockerfilen er modtaget efter, jak vytvořit Docker obrázek. První věc, kterou se zde naučíme, je, že musíme založit náš obrázek na nějakém jiném obrázku, takže použijeme oficiální obrázek pro Redmine.

FRA Redmine

Tento první řádek Dockerfile bude založen nebo obrázek na nejnovějším a nejlepším obrázku, 4.1.0 v době psaní. Protože to zachytí jakoukoli verzi, která je nejnovější, můžete upřednostnit použití konkrétní verze, aby se zabránilo neočekávaným novým verzím, které mohou rozbít sestavení tohoto obrázku.

FRA Redmine: 4.1.0


Použití Gitu pro získání komponent

Většina témat a pluginů má gitové repozitáře, odkud můžeme stáhnout nejnovější kód. At platí pro následující tři komponenty.

Základní Redmine obraz neobsahuje Git, ale můžeme ho přidat do obrazu následujícím způsobem

KØR apt installation -y git

Toto bude provedeno při sestavování obrazu a umožní vám používat Git v následujících instrukcích.

Téma Gitmike: doporučují klonovat jejich repozitář přímo

Kør git klon https://github.com/makotokw/redmine-theme-gitmike.git offentlig / temaer / gitmike

Tento řádek uloží klonovaný projekt do příslušné složky public/themes

Skrytí postranního panelu: Stejny postup lze použít i pro pluginy. Tento vyžaduje pouze umístění klonované složky do složky pluginů

Kør git klon https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Vložení obrázku fra clipboardu: Toto také vypadá jako typický postup, naklonujte repozitář og můžete začít

Kør git klon https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Ale pokud si přečtete více, uvidíte, že "se doporučuje nainstalovat gem RMagick, jinak se připojené obrázky nezobrazí v exportovaných souborech PDF". Jak to tedy uděláme? Mělo by to být tak snadné jako

RUN perle installer rmagick

ale pravděpodobně víte, že gem musí být sestaven před instalací, takže musíte nainstalovat některé balíčky před instalací gemu. Řádek, který skutečně potřebujete, je

Kør apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && perleinstallere rmagick

Vše v jednom příkazu, rozděleno na dvě řádky pro čitelnost.

Forfatter tohoto pluginu neposkytuje verzi pro Redmine 4, ale hledání názvu pluginu på GitHubu er klar til projektet, který ano: RubyClickAP / clipboard_image_paste.


Přidání pluginu nebo tématu med staženého zdroje

Téma A1 je dobrým příkladem pro ilustraci případů, kdy máte zdroj, ale nemáte URL k jeho stažení během processu sestavování. Jedna možnost v takových případech je poskytnout zdroj procesu sestavování. Tím se obsah přidá do obrazu bez jeho stahování

KOPI a1 offentlig / temaer / a1

Til vyžaduje, aby složka a1 byla na stejném místě jako Dockerfile.

Nyní jste připraveni sestavit svůj obraz, takže otevřete terminál tam, kde je váš Dockerfile, a spusťte

docker build -t min-redmine.

Jednou sestavený budete moci spustit svůj obraz s

docker run -it -p 3000: 3000 - navn min-redmine min-redmine

Send en kommentar til http://localhost:3000, abyste viděli svůj vlastní Redmine!

Redmine po úpravách


Několik tipů, jak přidat více pluginů

Aby bylo možné vyzkoušet nye pluginy, er vždy lepší použít nový kontejner Redmine. Tak jsem zjistil, že rmagick vyžaduje některé balíčky k instalaci. Nejprve spusťte odstraňovatelnou instanci Redmine s

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

a poté vstupte do instans s

docker udfører -det test-redmine bash

Hvis du vil installere OS-funktionerne, har du ingen problemer med migrace. Jen si pamatujte kroky, abyste je mohli přidat do svého Dockerfile!


Nahrání vašeho vlastního obrázku do Docker Hubu

Obrázek, který jste právě vytvořili, je dostupný pouze v místním prostředí. Co když ho chcete udělat dostupným pro ostatní, řekněme pro všechny? Samozřejmě můžete nahrát Dockerfile a související soubory do git repozitáře a zájemci si mohou sami sestavit obrázek. Ale Docker vil ikke blive registreret. Pro til vytvořte účet på hub.docker.com og také vytvořte repozitář pro svůj obrázek. Poté se přihlaste v terminálu takto

docker-login

Označte svůj obrázek, aby mohl být nahrán do vašeho repozitáře

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

a nahrajte ho takto

docker push lcofre / redmine: seneste

Bemærk Docker og registrer Docker

Nyní si může kdokoli vyzkoušet váš obrázek tak, že provede

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

Til at være! Du skal installere Redmine på en personlig måde til at oprette en Docker. Prosím, sdílejte své kommentáře nebo otázky níže.


Zmenšení velikosti Docker obrázku

Zjistíte, že Dockerfile i arkivering spojil mnoho řádků do jednoho. Toto er doporučení od Dockeru, jak vytvářet menší obrázky. Toto en další rady najdete na https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Dalším doporučením, jak snížit konečnou velikost obrázku, je použití alpine verze Redmine

FRA Redmine: alpin

Alpine er jiná linuxová distribution. Místo použití apt k instalaci balíčků musíte použít apk.

Jedna poslední rada: balíčky, které jsme nainstalovali pomocí apt v Dockerfile, již po sestavení obrázku nejsou potřeba. Můžete dodržovat nejlepší postup použitím vícestupňových sestavení: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Praxe udržování malého Docker obrázku pomáhá zejména při škálování počtu instancí, ale také snižuje útokovou plochu vašeho obrázku.

Vil du ikke opgradere Redmine? Snadný.

Získejte všechny mocné nástroje pro dokonalé plánování, řízení a kontrolu projektů v jednom softwaru.

Formålet med Easy Redmine

Vyzkoušejte Easy Redmine på 30 dage

Komplet funkce, chráněno protokolem SSL, denní zálohování, og vaší lokalitě.