Kuinka luoda oma räätälöity Redmine Docker -kuva

6/16/2020
8 λεπτά
Λούκα Μπέγια
Το Redmine στο yksi suosituimmista työkaluista projectinhallintaan και ongelmanseurantaan. Jos olet kokeillut sitä tai joutunut asentamaan sen tuotantoympäristöön, tiedät varmasti myös, että virallinen Docker-kuvake helpottaa asennusta ja skaalausta korkean kysynnän ympäristöissä.

Redmine ennen mukauttamista

Huomio: Redmine:n alkuperäinen docker-versio löytyy osoitteesta https://hub.docker.com/_/redmine. Täältä löydät myös hyviä ohjeita ulkoisen tietokannan täyttämiseen ja ulkoisten kansiojen liittämiseen (jotta voit asentaa lisäosia).

Jos haluat kuten minä nähdä suoraan koodin räätälöidyn Redmine Docker-kuvan rakentamiseksi, voit siirtyä osoitteeseen github.com/lcofre/redmine ja tarkistaa Dockerfile:n.

Το Redmine Docker-kuva στο hyvä lähtökohta, vaikka todennäköisesti haluat mukauttaa sitä lisäosilla ja teemoilla oman mieltymyksesi mukaan. Tässä ohjeessa rakennamme Docker-kuvan virallisen kuvan pohjalta, lisäämme joitain teemoja ja lisäosia sekä lataamme sen docker-rekisteriin.

Yksinkertaisuuden vuoksi emme käytä ulkoista tietokantaa, vaan Redmine-kontin sisäistä tietokantaa. Tuotantoympäristössä on kuitenkin suositeltavaa asentaa omistettu tallennuskontti.


Lisäosat ja Teemat

Olemme valinneet muutamia lisäosia ja teemoja, όχι μόνο η εριλαΐσια λίστα με το Redmineen:

  • Piilota sivupalkki, lisäosa, joka mahdollistaa enemmän näyttötilaa, erityisesti ongelmien kirjoittamista varten
  • Liitä leikepöydältä, jolla voit liittää näyttökuvia suoraan leikepöydältä tiedoston valitsemisen sijaan
  • A1 ja Gitmike, kaksi teemaa, jotka muuttavat käyttöliittymän ulkonäköä

Jätämme pois lisäosat, jotka vaativat tietokannan siirtämistä, koska tarvitset valmiiksi olemassa olevan tietokannan. Jos tarvitset asentaa lisäosan, joka vaatii siirtämisen, jätä kommentti alle, sillä meillä on hyviä ideoita sinulle.


Dockerfilen kirjoittaminen

Dockerfile στο resepti Docker-kuvan rakentamiseen. Ensimmäinen Asia, jonka opimme täällä, on se, että meidän on perustettava kuva johonkin toiseen kuvaan, joten käytämme virallista Redmine-kuvaa

ΑΠΟ Redmine

Tämä Dockerfilen ensimmäinen rivi perustaa kuvamme uusimpaan και parhaaseen kuvaan, 4.1.0 kirjoitushetkellä. Koska tämä hakee aina uusimman version, saatat haluta käyttää tiettyä versiota välttääksesi odottamattomia uusia versioita, jotka saattavat rikkoa tämän kuvan rakentamisen

ΑΠΟ Redmine: 4.1.0


Komponenttien hankkiminen Gitin avulla

Useimmissa tapauksissa teemoilla ja liitännäisillä στο git-repositoriot, joista voimme ladata uusimman koodin. Tämä pätee seuraaviin kolmeen komponenttiin.

Pohja-Redmine-kuva ei sisällä gitia, mutta voimme lisätä sen kuvaan seuraavasti

RUN apt install -y git

Tämä suoritetaan, kun kuva rakennetaan, ja se mahdollistaa gitin käytön seuraavissa ohjeissa.

Gitmike-teema: he suosittelevat kloonaamaan heidän repoaan suoraan

Εκτελέστε τον κλώνο git https://github.com/makotokw/redmine-theme-gitmike.git δημόσια / θέματα / gitmike

Tämä rivi tallentaa kloonatun projectin oikeaan kansioon public/themes

Απόκρυψη πλευρικής εργαλειοθήκης: Sama menettely voidaan soveltaa liitännäisiin. Tämä ei vaadi muuta kuin kloonatun kansion sijoittamisen liitännäisten kansioon

Εκτελέστε τον κλώνο git https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Επικόλληση εικόνας πρόχειρου: Tämä vaikuttaa myös tyypilliseen menettelyyn, kloonaa repo ja olet valmis

Εκτελέστε τον κλώνο git https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Mutta Jos lue hieman lisää huomaat, että "on suositeltavaa asentaa RMagick-kivi, muuten liitetyt kuvat eivät näy PDF-tiedostoissa". Πού να μάθουν; Sen pitäisi olla yhtä helppoa kuin

RUN gem εγκατάσταση rmagick

mutta tiedät varmaan, että kiven on rakennettava ennen kuin se voidaan asentaa, joten sinun on asennettava joitain paketteja ennen kiven asentamista. Tarvitsemasi rivi on

RUN apt install -y build-sential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem εγκατάσταση rmagick

Kaikki yhdessä komennossa, jaettuna kahteen riviin luettavuuden vuoksi.

Tämän liitännäisen alkuperäinen tekijä ei tarjoa versiota Redmine 4:lle, mutta liitännäisen nimen etsiminen GitHubista johti projectiin, joka tarjoaa: RubyClickAP / clipboard_image_paste.


Liitännäisen tai teeman lisääminen ladatusta lähteestä

A1-teema on hyvä esimerkki tapauksista, joissa sinulla on lähdekoodi, mutta ei URL-osoitetta lataamista varten rakennusprosessin aikana. Yksi vaihtoehto tällaisissa tapauksissa on antaa lähde rakennusprosessille. Tällä tavoin sisältö lisätään kuvaan lataamatta sitä

COPY a1 δημόσιο / θέματα / a1

Tämä edellyttää, että a1-kansio on samassa paikassa kuin Dockerfile.

Nyt olet valmis rakentamaan kuvan, joten avaa terminaali, jossa Dockerfile on, και suorita

docker build -t my-redmine.

Kun kuva on rakennettu, voit käyttää sitä seuraavasti

docker run -it -p 3000: 3000 --όνομα my-redmine my-redmine

Mene osoitteeseen http://localhost:3000 nähdäksesi mukautetun Redminen!

Redmine mukauttamisen jälkeen


Joitain vinkkejä lisäliitännäisten lisäämiseen

Uusien liitännäisten kokeilemiseksi on aina parempi käyttää uutta Redmine-konttia. Tämän avulla huomasin, että rmagick vaatii joitain asennettavia paketteja. Aja ensin Redminen hävitettävä instanssi komennolla

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

ja siirry sitten instanssiin komennolla

docker exec -it test -redmine bash

Siellä voit asentaa käyttöjärjestelmän paketteja, kiviä tai suorittaa migraatioita. Muista vain vaiheet, jotta voit lisätä ne Dockerfileesi!


Ο Docker Hubiin είναι πολύ καλός

Kuva, jonka juuri loit, on saatavilla vain paikallisessa ympäristössäsi. Entä jos haluat tehdä sen saataville muille, sanotaanko kaikile; Tietysti voit ladata Dockerfile-tiedoston ja siihen liittyvät tiedostot git-repoon, ja kiinnostuneet voivat rakentaa kuvan ite. Mutta Docker mahdollistaa myös rakennetun kuvan lataamisen heidän rekisteriinsä. Siihen luo tili osoitteessa hub.docker.com ja luo myös kuvallesi oma tietovarasto. Sitten kirjaudu sisään terminaalissa näin

σύνδεση στο docker

Merkitse kuvasi, jotta se voidaan ladata tietovarastoosi

docker tag my-redmine: τελευταία lcofre / redmine: τελευταία

ja lähetä se näin

docker push lcofre / redmine: τελευταία

Ντόκερ-κουβάν Ντόκερ-ρεκιστέρι

Nyt kuka tahansa voi kokeilla kuvaa tekemällä näin

docker run -it -p 3000: 3000 --όνομα my-redmine lcofre / redmine

Siinä kaikki! Δεν είναι δυνατή η έκδοση Redmine-asennuksesta räätälöityyn, joka στο saatavilla Docker-rekisterissä. Τζάα κομμέντισι ταϊ κυσύμυξεσι αλλα.


Docker-kuvan koon pienentäminen

Huomaat, κ.λπ tietovaraston Dockerfile yhdisti monta riviä yhdeksi. Tämä on Dockerin suositus pienempien kuvien luomiseksi. Voit löytää tämän neuvon ja muita osoitteesta https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Toinen suositus kuvan lopullisen koon pienentämiseksi on käyttää Redminen alpine-versiota

ΑΠΟ Redmine: αλπικό

Alpine στο erilainen Linux-jakelu. Sen sijaan, että käytät apt:ää pakettien asentamiseen, sinun on käytettävä apk:ta.

Viimeinen vinkki: Dockerfilessa apt:lla asennetut paketit eivät enää ole tarpeen kuvan rakentamisen jälkeen. Voit noudattaa parasta käytäntöä käyttämällä monivaiheisia rakennuksia: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Pienikokoisen Docker-kuvan säilyttäminen auttaa erityisesti, kun lisäät instanssien määrää, mutta se myös vähentää hyökkäyspintaa kuvassasi.

Ultimaattinen Redmine-päivitys; Helppoa.

Saat kaikki tehokkaat työkalut täydelliseen projectisuunnitteluun, hallintaan ja valvontaan yhdessä ohjelmistossa.

Löydä Easy Redmine

Kokeile Easy Redmine -ohjelmaa 30 päivän ilmaisella kokeilujaksolla

Täydet ominaisuudet, SSL-suojattu, päivittäiset varmuuskopiot, sijaintisi mukaan