en
Nyelv
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
AI fordítás
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Egyéni Redmine Docker kép létrehozása

6/16/2020
8 perc
Lukáš Beňa
A Redmine a projektmenedzsment és a problémakövetés egyik legnépszerűbb eszköze. Ha kipróbálta, vagy éles környezetben kellett telepítenie, valószínűleg azt is tudja, hogy létezik egy hivatalos dokkolókép, amely nagymértékben leegyszerűsíti a telepítést és a méretezést a nagy igényű környezetekben.

Redmine a testreszabás előtt

Megjegyzések: A Redmine natív dokkolója megtalálható itt: https://hub.docker.com/_/redmine. Itt találhat jó utasításokat a külső adatbázis feltöltéséhez és a külső mappák csatlakoztatásához (a bővítmények telepítéséhez).

Ha olyan vagy, mint én, és inkább közvetlenül látja a Redmine Docker egyedi képének létrehozására szolgáló kódot, akkor keresse fel github.com/lcofre/redmine és ellenőrizze a Dockerfile-t.

A Redmine Docker kép jó kiindulási pont, bár valószínűleg szeretné testreszabni azt a pluginokkal és a kívánt témákkal. Ebben a útmutatóban felépítjük a hivatalos kép alapján egy Docker képet, hozzáadunk néhány témát és beépülő modult, és feltöltjük a docker nyilvántartásba.

Az egyszerűség kedvéért nem külső adatbázist, hanem belső adatbázist fogunk használni a Redmine tárolóban. A termelési környezethez azonban célszerű külön tárolótartályt felállítani.


Bővítmények és témák

Néhány beépülő modult és témát választottunk annak bemutatására, hogy hogyan változtathatjuk meg őket a Redmine-ban:

  • Az oldalsáv elrejtése, egy bővítmény, amely nagyobb képernyőterületet biztosít, különösen problémák írásakor
  • Beillesztés a vágólapra, a vágólapról beillesztő képernyőképeket csatolhatja a fájl kiválasztása helyett
  • A1 és a Gitmike, két téma a felhasználói felület megjelenésének megváltoztatásához

Kizárjuk azokat a bővítményeket, amelyek adatbázis-migrációt igényelnek, mivel szükség van egy már létező adatbázisra. Kérjük, kommentálja az alábbiakat, ha telepítenie kell egy áttelepítést igénylő plugint, mivel jó ötletek vannak az Ön számára.


A Dockerfile írása

A Dockerfile egy recept a Docker kép létrehozására. Az első tény, amit itt megtanulunk, az, hogy képet más néven kell alapoznunk, tehát a Redmine hivatalos nevét fogjuk használni

Redmine-től

A Dockerfile első sorában a legfrissebb és a legmagasabb (4.1.0) kép alapul, vagy a kép az írás idején. Mivel ez megragadja a legfrissebb verziót, inkább egy adott verziót használ, hogy elkerülje a váratlan új verziókat, amelyek megszakíthatják a kép felépítését

Redmine-től: 4.1.0


A Git segítségével az összetevők beszerzése

A legtöbb esetben a témák és a bővítmények git-tárolóval rendelkeznek, ahol letölthetjük a legújabb kódot. Ez a helyzet a következő három komponens esetében.

Az alapvető Redmine kép nem érkezik, de így adhatjuk hozzá a képhez

RUN apt install -y GIT

Ez a kép felépítésekor kerül végrehajtásra, és lehetővé teszi a git használatát az alábbi utasításokban.

Gitmike téma: azt javasolják, hogy közvetlenül klónozzák a repójukat

RUN git klón https://github.com/makotokw/redmine-theme-gitmike.git nyilvános / themes / gitmike

A sor elmenti a klónozott projektet a megfelelő nyilvános / témák mappába

Az oldalsáv elrejtése: Ugyanez az eljárás alkalmazható a bővítményekre. Ehhez csak a klónozott mappát a plugins mappába kell helyezni

RUN git klón https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Csipeszes írótábla-beillesztés: Ez is a tipikus eljárásnak tűnik, klónozza a repo-t, és jó vagy menni

RUN git klón https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

De ha te olvassa el még egy kicsit látni fogja, hogy "ajánlott az RMagick gem telepítése, különben a csatolt képek nem jelennek meg az exportált PDF fájlokban". Szóval hogyan csináljuk ezt? Olyan egyszerűnek kell lennie, mint

Futtassa a gem install rmagick szoftvert

de valószínűleg tudja, hogy a drágakövet telepítés előtt meg kell építeni, ezért a gyöngyszem telepítése előtt telepítenie kell néhány csomagot. A vonal, amire igazán szükséged van

Futtassa a telepítést - ha épít-nélkülözhetetlen imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem install rmagick

Minden egy parancsban, két sorban elválasztva az olvashatóság érdekében.

A beépülő modul eredeti szerzője nem nyújt a Redmine 4 verzióját, de a plugin nevének a GitHub-ban történő keresése egy olyan projektre engedte fel, amely: RubyClickAP / clipboard_image_paste.


Beépülő modul vagy téma hozzáadása letöltött forrásból

A A1 téma jó példa arra, hogy bemutassa azokat az eseteket, amikor megvan a forrás, de nem az URL, amely letölthető az összeállítási folyamat során. Ilyen esetekben az egyik lehetőség a forrás biztosítása az építési folyamathoz. Ily módon a tartalom hozzáadódik a képhez letöltés nélkül

MÁSOLÁS a1 nyilvános / témák / a1

Ehhez az a1 mappának ugyanabban a helyen kell lennie, ahol a Dockerfile.

Most már készen áll a kép elkészítésére, tehát nyisson meg egy terminált, ahol a Dockerfile található, és hajtsa végre

dokkoló építés - my-redmine.

A felépítés után képes lesz futtatni a képet a

dokkoló futtatása -p-3000: 3000 - neve my-redmine my-redmine

Menj előre, és nyisd meg a http: // localhost: 3000 elemet, hogy megnézhesd az egyedi Redmine-t!

Redmine a testreszabás után


Néhány tipp további bővítmények hozzáadásához

Az új pluginek kipróbálásához mindig jobb, ha friss Redmine tárolót használ. Így rájöttem, hogy a rmagick bizonyos csomagok telepítését igényli. Először futtasson egy Redmine elvethető példányát a

dokkoló fut - rm -d -p 3000: 3000 - név teszt-redmine redmine

majd írja be a példányt a

dokkoló végrehajtja - teszt-redmine bash

Itt telepíthet operációs rendszer csomagokat, drágaköveket vagy futtathat áttelepítéseket. Csak emlékezzen a lépésekre, így felveheti őket a Dockerfile-be!


Az egyéni kép feltöltése a Docker Hub-ba

Az éppen létrehozott kép csak a helyi környezet számára elérhető. Mi van, ha azt akarja, hogy mások számára is elérhetővé tegyük, mondjuk mindenkinek? Természetesen feltöltheti a Dockerfile fájlt és a kapcsolódó fájlokat egy git repo-ra, és az érdeklődők maguk készíthetik a képet. De a Docker lehetővé teszi az épített kép feltöltését a nyilvántartásba. Ehhez hozzon létre egy fiókot a hub.docker.com webhelyen, és hozzon létre egy tárolót is a képéhez. Ezután jelentkezzen be a terminálba így

dokkoló bejelentkezés

Jelölje meg a képet, hogy feltölthető legyen a repójába

docker tag my-redmine: legújabb lcofre / redmine: legújabb

és nyomja meg így

dokkoló push lcofre / redmine: legújabb

A Docker kép a Docker nyilvántartásban

Most bárki kipróbálhatja a képét azáltal, hogy csinál

dokkoló futtatása -p-3000: 3000 - neve my-redmine lcofre / redmine

Ez az! Így léphet át a szokásos Redmine telepítésről a Docker nyilvántartásban elérhető személyre szabott verzióra. Kérjük, ossza meg észrevételeit vagy kérdéseit alább.


A Docker képméretének kivágása

Meg fogja találni, hogy a Dockerfile a repoban sok sort egyesített egybe. Ez egy Docker ajánlás kisebb képek készítéséhez. Ezt a tanácsot és mások itt találhatja meg https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Egy másik javaslat a kép végső méretének csökkentésére a Redmine alpesi változatának használata

Redmine-től: alpesi

Az Alpine egy másik linux eloszlás. Ahelyett, hogy apt-t használna a csomagok telepítéséhez, az apk-t kell használnia.

Az utolsó tipp: azokra a csomagokra, amelyeket az apt-vel telepítettünk a Dockerfile-ben, a kép létrehozása után már nincs szükségük. Követheti a többlépcsős felépítés használatának bevált gyakorlatait: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

A kis méretű Docker-kép megőrzésének gyakorlata különösen akkor segíti az esetek számának növelését, de csökkenti a kép támadási felületét is.

A végső Redmine frissítés? Könnyen.

Szerezzen meg minden hatékony eszközt a tökéletes projekttervezéshez, -kezeléshez és -ellenőrzéshez egyetlen szoftverrel.

Fedezze fel az Easy Redmine terméket

Próbálja ki az Easy Redmine-t 30 napos ingyenes próbaverzióval

Teljes funkciók, SSL védett, napi biztonsági mentések az Ön földrajzi elhelyezkedésében