Как да създадете персонализиран Docker образ på Redmine

6/16/2020
9 minuter
Лукъш Беня
Редмайн е един от най-популярните инструменти са управление на проекти och проследяване опроблеми. Hur är det? телно опростява инсталирането och мащабирането för среди с високо търсене.

Redmine преди персонализация

Забележка: Можете да намерите нативния докер på Redmine på https://hub.docker.com/_/redmine. (Om du vill göra det och göra det kan du göra det för att komma till kontoret och kommunicera жете да инсталирате плъгини).

Ако сте като мен и предпочитате да видите директно кода за изграждане на персонализиран Docker ansluter sig till Redmine, модед github.com/lcofre/redmine и да проверите Dockerfile.

Använd Redmine Docker och gör det enkelt, kan du köpa och köpa kunder med abonnemang. В това ръководство ще изградим Docker образ, базиран на официалния, ще добавим някои теми и плъгиниг официалния .

Заради опростяване, няма да използваме външна база данни, а вместо това вътрешна база данни в самения i Red. За производствена среда обаче е препоръчително да се настрои отделен контейнер för съхранение.


Плъгини и теми

Избрахме няколко плъгина и теми, за да илюстрираме различни начини за добавяне им към Redmine:

Изключваме плъгини, които изискват миграция на базата данни, тъй като ви е необходима преседваъ данни. Моля, коментирайте по-долу, ако имате нужда да инсталирате плъгин, който изисква миграции, имате и моля с.


Написване на Dockerfile

Dockerfile е рецепта за изграждане на Docker образ. Първото нещо, което ще научим тук, е, че трябва да базираме нашия образ на друг образ, такеза чие till Redmine

FRÅN Redmine

Dessa filer är tillgängliga från Dockerfile är plattformar eller öppnas för applikationer och applikationer, 4.1.0 i visningsläge. Тъй като това ще хване каквато и да е версия, която е най-нова, може да предпочетете да използава, използава збегнете неочаквани нови версии, които могат да нарушат изграждането на този образ

FRÅN Redmine: 4.1.0


Използване на Git за получаване на компонентите

В повечето случаи темите и плъгините имат git хранилища, от където можем да изтеглим най-новия. Това е така за следните три компонента.

Основното изображение на Redmine идва без git, но можем да го добавим към изображението по следния начин:

KÖR apt installation -y git

Detta är mycket svårt, det är möjligt att göra det, och det är möjligt att köpa in git växel.

Tema Gitmike: те препоръчват да клонирате директно техния репо

KÖR GIT-klon https://github.com/makotokw/redmine-theme-gitmike.git offentliga / themes / gitmike

Тази линия ще запази клонирания проект в подходящата папка offentliga/teman

Скриване на страничната лента: Същата процедура може да се приложи и за плъгини. Този изисква само поставянето на клонираната папка в папката на плъгините

KÖR GIT-klon https://gitlab.com/bdemirkir/sidebar_hide.git plugins / sidebar_hide

Urklipp Bildklistra: Това също изглежда като типичната процедура, клонирайте репото och сте готови да продължите

KÖR GIT-klon https://github.com/RubyClickAP/clipboard_image_paste.git plugins / clipboard_image_paste

Но ако прочетете малко повече, ще видите, че "се препоръчва да се инсталира гемът RMagick, в противен случай прикачените изображените изображения пображения тираните PDF файлове". Така че как да го направим? Трябва да бъде толкова лесно, колкото:

KÖR pärla installera rmagick

inte kommer att säljas, kommer att säljas, kommer att säljas, kommer att kunna levereras кети преди да инсталирате гема. Линията, която наистина ви трябва, е:

KÖRA apt install -y build-essential imagemagick libmagickcore-dev libmagickwand-dev ruby-dev \

       && gem installera rmagick

Всичко в една команда, разделена на две реда за по-добра четимост.

Оригиналният автор на този плъгин не предоставя версия för Redmine 4, но търсенето името името на плъгина в GitHub, педкед. го прави: RubyClickAP / clipboard_image_paste.


Добавяне на плъгин или тема от изтеглен източник

Темата A1 е добър пример за илюстриране на случаите, когато имате източника, но не и URL в случаите, когато имате източника, но не и URL за изтегляне по веспемъ. Една опция в такива случаи е да предоставите източника на процеса на създаване. Така съдържанието се добавя към изображението без да се изтегля.

COPY a1 public / teman / a1

Това изисква папката a1 да бъде på същото място, където е Dockerfile.

Сега сте готови да създадете изображението си, така че отворете терминал там, където е Dockerfile, и изпеъ

docker build -t my-redmine.

След като е създадено, ще можете да стартирате изображението си с

docker run -it -p 3000: 3000 - namn min-redmine my-redmine

Lägg till http://localhost:3000, för att se Redmine!

Redmine след персонализация


Някои съвети за добавяне на повече плъгини

Om du vill använda nya program, kan du ladda ner en användare på Redmine. Така разбрах, че rmagick изисква инсталиране на някои пакети. Първо, стартирайте изтриваема инстанция на Redmine с

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

и след това влезте в инстанцията с

docker exekvera -it test-redmine bash

Om du installerar OS-paket, kan du göra eller visa bilder. Försök att ladda ner Dockerfile!


Качване на персонализирано изображение i Docker Hub

Изображението, което току-що построихте, е достъпно само за вашата локална среда. Hur kan jag göra det för att kunna göra det? Разбира се, можете да качите Dockerfile och свързаните файлове i git repo, och заинтересованите могат построята построят изабира. Но Docker ви позволява също да качите построеното изображение в техния регистър. Du kan hitta något på hub.docker.com och det kan också göras för att hitta ett företag. След това влезте в терминала по следния начин

docker-inloggning

Маркирайте изображението си, така че да може да бъде качено във вашето хранилище

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

и го качете по следния начин

docker push lcofre / redmine: senaste

Изображението на Docker в Docker регистъра

Сега всеки може да опита вашето изображение, като направи

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

Това е! Om du vill installera Redmine från den operativa installationen Redmine för att installera världen, installera i Docker-regi. Моля, споделете коментарите или въпросите си по-долу.


Намаляване на размера на Docker изображението

Ще откриете, че Dockerfile i repo съединява много редове в един. Detta är ett erbjudande för Docker, vilket gör det möjligt för dig att göra det. Можете да намерите този съвет и други в https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Още една препоръка за намаляване на крайния размер на изображението е да използвате алпайн версията på Redmine

FRÅN Redmine: alpin

Алпайн е различно дистрибуция på Linux. Вместо да използвате apt за инсталиране на пакети, трябва да използвате apk.

Om du vill ha något annat alternativ: paket, installeras med apt i Dockerfile, du kan inte köpa en plattform. Можете да следвате най-добрата практика за използване на многоетажни построения: https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#use-multi-stage-builds

Практиката да се поддържа малко Docker изображение помага особено при увеличаване на броя на инстанцонаците, акуемата повърхност на изображението ви.

Крайната надстройка på Redmine? Лесна.

Använda maskiner och maskiner för operativ utrustning, drift och kontakt med edin dator.

Lägg till Easy Redmine

Läs Easy Redmine på gratis öppning från 30 dagar

Пълни функции, защитени с SSL, ежедневни резервни копия, във вашата географска локация