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 στο 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.