Jak vytvořit vlastní Docker obraz Redmine.

6/16/2020
דקות 8
Lukáš Beňa
Redmine jedním z nejpopulárnějších nástrojů pro řízení projectů 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 škalování pro škalování pro.

Redmine před úpravou

פוזנמקה: Redmine nativní docker můžete najít na https://hub.docker.com/_/redmine. אם יש לך הוראות מפורטות, תוכל להשתמש בנתונים חיצוניים ובתוספות חיצוניות (תוספי התקנה מקצועיים).

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 קובץ Dockerfile zkontrolovat.

אם Redmine Docker זמין, אפשר למצוא את התוסף הזה, אבל זה יכול להיות טוב יותר. V tomto návodu vytvoříme Docker obrázek založený on oficiálním obrázku, přidáme některá témata a pluginy and nahrajeme ho do docker registru.

Zjednodušeně řečeno, nebudeme používat externí databázi, ale interní databázi ו-samotném kontejneru Redmine. Pro Productční prostředí je však vhodné nastavit dedikovaný úložný kontejner.


תוסף לתבנית

ויברלי יסמוך תוסף לעיצוב, abychom ilustrovali různé způsoby, jak je přidat do Redmine:

תוסף תוספי, שרת מידע על העברת נתונים, פרוטוזה פוטנציאלית של נתונים קיימים. Pokud potřebujete nainstalovat plugin, který potřebuje migrace, prosím, comment níže, protože máme pro vás dobré nápady.


Psaní Dockerfile

Dockerfile je recept na to, 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.

מאת 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.

מ- 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. To 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

הפעל התקנת GIT

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

תמה Gitmike: doporučují klonovat jejich repozitář přímo

הפעל שיבוט git https://github.com/makotokw/redmine-theme-gitmike.git ציבור / נושאים / gitmike

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

Skrytí postranního panelu: פוסט-אפ לא זמין עבור תוסף פרו. Tento vyžaduje pouze umístění klonované složky do složky pluginů

הפעל שיבוט git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

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

הפעל שיבוט git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

פוקוד אייל 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

הפעל פנינה להתקין

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

RUN apt להתקין -ה build-חיוני imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       & & פנינה להתקין rmagick

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

מחבר המחבר טוהוטו פלאגינו neposkytuje verzi pro Redmine 4, ale hledání nzvu pluginu on GitHubu ממשיך לפרויקט, קטנה ano: הדבק RubyClickAP / clipboard_image_paste.


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

תמה 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 processu sestavování. Tím se obsah přidá do obrazu bez jeho stahování

COPY a1 ציבורי / נושאים / a1

כדי 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 - my-redmine.

Jednou sestavený budete moci spustit svůj obraz s

docker run -it -p 3000: 3000 - שם my-redmine my-redmine

Jděte a otevřete http://localhost:3000, abyste viděli svůj vlastní Redmine!

Redmine po úpravách


טיפים נוספים, יש צורך בתוסף נוסף

Aby bylo možné vyzkoušet nové pluginy, you doddy 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 - rm -d -p 3000: 3000 - name test-redmine redmine

a poté vstupte do instance s

מבצעים של דוקר - מבחן redmine bash

אם יש לך אפשרות להתקין מערכת הפעלה תקינה, מיגרס מתקדם. Jen si pamatujte kroky, abyste je mohli přidat do svého Dockerfile!


Nahrání vaseho 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 vám také umožňuje nahrát sestavený obrázek do jejich registru. Pro to vytvořte účet on hub.docker.com and take vytvořte repozitář pro svůj obrázek. Poté se přihlaste v terminálu takto

כניסה למעגן

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

תג הדוקר my-redmine: האחרונה של lcofre / redmine: האחרונה

a nahrajte ho takto

לדחוף דוקר lcofre / redmine: אחרון

מידע על Docker v registru Docker

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

מפעיל docker -it -p 3000: 3000 - שם my-redmine lcofre / redmine

כדי להיות! יש צורך להתקין את Redmine בהתאמה אישית לרישום Docker. Prosím, sdílejte své komentáře nebo otázky níže.


Zmenšení velikosti Docker obrázku

ז'יסטיט, ז' Dockerfile v repozitáři spojil mnoho řádků do jednoho. Toto je doporučení od Dockeru, jak vytvářet menší obrázky. Toto a 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

מ Redmine: אלפיני

Alpine je jiná linuxová distribuce. 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.

האם לשדרג את Redmine? סנאדני.

Získejte všechny mocné nstroje pro dokonalé plánování, řízení a controlu projectů v jednom softwaru.

Objevte Easy Redmine

הוסף את Easy Redmine ב-30 ימים

קומפלטני פונקציונליים, פרוטוקולים של SSL, תקצירים, ואזור מקומי.