Nasıl Özel Redmine Docker Görüntüsü Oluşturulur

6/16/2020
8 minutter
Lukáš Beňa.
Redmine, proje yönetimi ve sorun takibi için en popüler araçlardan biridir. Eğer denediyseniz veya üretim ortamında kurmanız gerektiyse, muhtemelen yüksek talep ortamlarında kurulumu ve ölçeklendirmeyi büyük ölçüde kolaylaştıran resmi bir docker görüntüorsunuz da biliyorsunuz da biliyorsunu oldu.

Øzelleştirmeden önceki Redmine

Ikke: Redmine'in yerel docker sürümü https://hub.docker.com/_/redmine adresseinde bulunabilir. Burada, harici bir veritabanını nasıl dolduracağınızı ve harici klasörleri nasıl bağlayacağınızı (eklentileri yükleyebilmek için) iyi talimatlar bulabilirsiniz.

Eğer benim gibiyseniz ve özel bir Redmine Docker görüntüsü oluşturmak için kodu doğrudan görmeyi tercih ederseniz, github.com/lcofre/redmine adresine gidip Dockerfile'ı kontrol edebilirsiniz.

Redmine Docker gørüntüsü iyi bir başlangıç ​​noktasıdır, ancak muhtemelen istediğiniz eklentiler ve temalarla özelleştirmek istersiniz. Bu nasıl yapılır adlı rehberde, resmi olanına dayanan bir Docker görüntüsü oluşturacak, bazı temalar ve eklentiler ekleyecek ve bunu docker kayıt defterine yükleyeceğiz.

Basitlik açısından, harici bir veritabanı yerine Redmine konteynerinin içinde bir dahili veritabanı kullanmayacağız. Bununla birlikte, üretim ortamı için ayrı bir depolama konteyneri kurmanız önerilir.


Eklentiler ve Temalar

Redmine'e eklemek için çeşitli yolları göstermek için birkaç eklenti ve tema seçtik:

  • Kenar çubuğunu gizle, özellikle sorunları yazarken daha fazla ekran alanı sağlamak için bir eklenti
  • Panodan yapıştır, bir dosya seçmek yerine panodan ekran görüntüleri eklemek için
  • A1 ve Gitmike, arayüzün görünümünü değiştiren iki tema

Veritabanı göçü gerektiren eklentileri hariç tutuyoruz, çünkü önceden var olan bir veritabanına ihtiyacınız var. Göç gerektiren bir eklenti yüklemek isterseniz lütfen aşağıya yorum yapın, størrelse iyi fikirlerimiz var.


Dockerfile'ı Yazma

Bir Dockerfile, bir Docker görüntüsünü nasıl oluşturacağımız hakkında bir reçetedir. Burada öğreneceğimiz ilk gerçek, görüntümüzü başka bir görüntüye dayandırmamız gerektiğidir, bu yüzden Redmine için resmi olanı kullanacağız

FRA Redmine

Dockerfile'ın bu ilk satırı, görüntümüzü yazma anında en son ve en iyi sürüme dayandıracaktır. Bu, en son sürümü alacağından beklenmedik yeni sürümleri önlemek için belirli bir sürüm kullanmanız tercih edilebilir

FRA Redmine: 4.1.0


Brug af Git til at hente komponenterne

I de fleste tilfælde har temaer og plugins git-lagre, hvor vi kan hente den nyeste kode. Dette er tilfældet for de følgende tre komponenter.

Basis Redmine-billedet kommer uden git, men vi kan føje det til billedet på denne måde

KØR apt installation -y git

Dette udføres, når billedet er bygget, og giver dig mulighed for at bruge git i følgende instruktioner.

Gitmike-tema: de anbefaler at klone deres repo direkte

Kør git klon https://github.com/makotokw/redmine-theme-gitmike.git offentlig / temaer / gitmike

Linjen gemmer det klonede projekt i den relevante mappe offentlighed / temaer

Skjul sidebjælke: Den samme procedure kan anvendes på plugins. Denne kræver intet mere end at placere den klonede mappe i plugins-mappen

Kør git klon https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Klippebord Billedpasta: Dette synes også den typiske procedure, klone repoen, og du er god til at gå

Kør git klon https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Men hvis du læs lidt mere ser du, at "det anbefales at installere RMagick perle, ellers vises vedhæftede billeder ikke i eksporterede PDF-filer". Så hvordan gør vi det? Det skal være så let som

RUN perle installer rmagick

men du ved sandsynligvis, at perlen skal bygges, før den kan installeres, så du skal installere nogle pakker, før du installerer perlen. Den linje, du virkelig har brug for, er

Kør apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && perleinstallere rmagick

Alt i en kommando, adskilt i to linjer for læsbarhed.

Den originale forfatter af dette plugin giver ikke en version til Redmine 4, men en søgning efter plugin-navnet i GitHub landede mig på et projekt, der gør: RubyClickAP / clipboard_image_paste.


Tilføjelse af et plugin eller et tema fra en downloadet kilde

A1-tema er et godt eksempel til at illustrere de tilfælde, hvor du har kilden, men ikke en URL, der skal downloades under byggeprocessen. En mulighed i tilfælde som denne er at give kilden til byggeprocessen. På den måde føjes indholdet til billedet uden at downloade det

KOPI a1 offentlig / temaer / a1

Dette kræver, at mappen a1 er på det samme sted, som Dockerfile er.

Nu er du klar til at opbygge dit billede, så åbn en terminal, hvor din Dockerfile er og udfør

docker build -t min-redmine.

Når den er bygget, kan du køre dit billede med

docker run -it -p 3000: 3000 - navn min-redmine min-redmine

Gå videre og åbn http: // localhost: 3000 for at se din brugerdefinerede Redmine!

Redmine efter tilpasning


Nogle tip til at tilføje flere plugins

For at prøve nye plugins er det altid bedre at bruge en frisk Redmine-beholder. Det var sådan jeg indså, at rmagick kræver, at nogle pakker skal installeres. Kør først en forkastelig forekomst af Redmine med

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

og indtast derefter forekomsten med

docker udfører -det test-redmine bash

Der kan du installere OS-pakker, perler eller køre migrationer. Bare husk trinnene, så du kan tilføje dem til din Dockerfile!


Docker Hub'a özel resminizi yükleme

Yeni oluşturduğunuz resim yalnızca yerel ortamınızda kullanılabilir. Başkalarına da kullanılabilir hale getirmek isterseniz, diyelim ki herkese, Dockerfile ve ilgili dosyaları bir git deposuna yükleyebilir ve ilgilenenler resmi kendileri oluşturabilir. Ancak Docker, oluşturduğunuz resmi kayıt defterine yüklemenize de izin verir. Bunun için hub.docker.com'da bir hesap oluşturun ve resminiz için bir depo da oluşturun. Ardından terminalde şu şekilde oturum açın

docker-login

Resminizi depoya yükleyebilmesi için etiketleyin

docker tag my-redmine: seneste lcofre / redmine: seneste

ve şu şekilde itin

docker push lcofre / redmine: seneste

Docker kayıt defterindeki Docker resmi

Artık herkes resminizi deneyebilir

docker run -it -p 3000: 3000 - navn my-redmine lcofre / redmine

İşte bu kadar! Bu, standart bir Redmine kurulumundan Docker kayıt defterinde erişilebilir bir kişiselleştirilmiş sürüme nasıl geçeceğinizdir. Lütfen yorumlarınızı veya sorularınızı aşağıya paylaşın.


Docker resim boyutunu kırpma

Depodaki Dockerfile birçok satırı birleştirdi. Bu, daha küçük resimler yapmak için bir Docker önerisidir. Bu öneriyi ve diğerlerini https://docs.docker.com/develop/develop-images/dockerfile_best-practices/ Du kan finde adressen.

Resmin son boyutunu azaltmak için başka bir öneri, Redmine'in alpine sürümünü kullanmaktır

FRA Redmine: alpin

Alpine farklı bir Linux dağıtımıdır. Paketleri yüklemek için apt yerine apk kullanmanız gerekmektedir.

Søn bir ipucu: Dockerfile'da apt ile yüklediğimiz paketlere artık ihtiyaç yoktur. Çoklu aşamalı yapıları kullanma en iyi uygulamasını takip edebilirsiniz: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Küçük boyutlu bir Docker resmi tutma uygulaması, özellikle örnek sayısını ölçeklendirirken yardımcı olur, ayrıca resminizdeki saldırı yüzeyini azaltır.

Redmine yükseltmesi için en iyi seçenek mi? Kolay.

Tüm güçlü araçları tek bir yazılımda mükemmel proje planlama, yönetim ve kontrol için edinin.

Kolay Redmine'i Keşfedin

Easy Redmine'ı 30 gün ücretsiz deneyin

Tam özellikli, SSL korumalı, günlük yedeklemeler, bulunduğunuz konumda