Kuinka luoda oma räätälöity Redmine Docker -kuva
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 on 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, jotka havainnollistavat erilaisia tapoja lisätä ne 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 on 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'dan
Tämä Dockerfilen ensimmäinen rivi perustaa kuvamme uusimpaan ja 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
BAŞLANGIÇ Redmine: 4.1.0
Komponenttien hankkiminen Gitin avulla
Useimmissa tapauksissa teemoilla ja liitännäisillä on 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
ÇALIŞTIR 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
RUN git klonu https://github.com/makotokw/redmine-theme-gitmike.git kamu / temalar / gitmike
Tämä rivi tallentaa kloonatun projektin oikeaan kansioon public/themes
Kenar Çubuğunu Gizle: Sama menettely voidaan soveltaa liitännäisiin. Tämä ei vaadi muuta kuin kloonatun kansion sijoittamisen liitännäisten kansioon
RUN git klonu https://gitlab.com/bdemirkir/sidebar_hide.git eklentileri / sidebar_hide
Pano Görüntü macunu: Tämä vaikuttaa myös tyypilliseen menettelyyn, kloonaa repo ja olet valmis
RUN git klonu https://github.com/RubyClickAP/clipboard_image_paste.git eklentileri / clipboard_image_paste
Mutta jos lue hieman lisää huomaat, että "on suositeltavaa asentaa RMagick-kivi, muuten liitetyt kuvat eivät näy PDF-tiedostoissa". Kuinka tämä tehdään? Sen pitäisi olla yhtä helppoa kuin
RUN gem kurulum 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 yap-temel imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \
&& gem install 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 projektiin, 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ä
KOPYA a1 genel / temalar / a1
Tämä edellyttää, että a1-kansio on samassa paikassa kuin Dockerfile.
Nyt olet valmis rakentamaan kuvan, joten avaa terminaali, jossa Dockerfile on, ja suorita
docker yapı -t benim-redmin.
Kun kuva on rakennettu, voit käyttää sitä seuraavasti
docker run -it -p 3000: 3000 - adı benim-redmin benim-redmin
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 çalıştırmak - rm -d -p 3000: 3000 - adı test-redmine redmine
ja siirry sitten instanssiin komennolla
docker exec -it testi-redmine bash
Siellä voit asentaa käyttöjärjestelmän paketteja, kiviä tai suorittaa migraatioita. Muista vain vaiheet, jotta voit lisätä ne Dockerfileesi!
Lataa mukautettu kuva Docker Hubiin
Kuva, jonka juuri loit, on saatavilla vain paikallisessa ympäristössäsi. Entä jos haluat tehdä sen saataville muille, sanotaanko kaikille? Tietysti voit ladata Dockerfile-tiedoston ja siihen liittyvät tiedostot git-repoon, ja kiinnostuneet voivat rakentaa kuvan itse. 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
liman işçisi girişi
Merkitse kuvasi, jotta se voidaan ladata tietovarastoosi
docker etiketi my-redmine: latest lcofre / redmine: latest
ja lähetä se näin
docker push lcofre / redmine: en yeni
Docker-kuvan Docker-rekisteri
Nyt kuka tahansa voi kokeilla kuvaa tekemällä näin
docker run -it -p 3000: 3000 - adı my-redmine lcofre / redmine
Siinä kaikki! Näin siirryt tavallisesta Redmine-asennuksesta räätälöityyn versioon, joka on saatavilla Docker-rekisterissä. Jaa kommenttisi tai kysymyksesi alla.
Docker-kuvan koon pienentäminen
Huomaat, että 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
KİMDİR Redmine: alpin
Alpine on 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.
Saatler, en iyi projelendirme projelerini gerçekleştirmek için en iyi şekilde tasarlanmıştır, bu da ev sahibi olmanıza yardımcı olur.