Kunagi to prosta aplikacja internetowa w języku Java, dla której już tworzony jest pakiet binarny .deb
dla naszych użytkowników. Ten pakiet zależy od tomcat6
i po prostu umieszcza plik .war
w /var/lib/tomcat6/webapps
. Działa to świetnie na Debianie i Ubuntu.Jak utworzyć pakiet Debiana dla mojej aplikacji WWW Java?
Teraz chcę stworzyć prawdziwy pakiet źródłowy, który może być zintegrowany z Debianem. Niestety nie mogę znaleźć żadnego samouczka. Istnieje wiele frakcjonowanych informacji na temat narzędzi takich jak CDBS, DH7 lub javahelper i ich poleceń. Ale którego z nich należy użyć?
Mam też kilka pytań koncepcyjnych:
Z reguły, aplikacje internetowe są instalowane poprzez skopiowanie webapp do katalogu pojemnika internetowej
webapps
. Czy wtedy byłoby dobrze uzależnić moją paczkę odtomcat6
i zainstalować moją aplikację bezpośrednio pod adresem/var/lib/tomcat6/webapps
? A może moja aplikacja webapp powinna być zainstalowana gdzieś indziej, zapewniając oddzielną konfigurację Tomcat i uruchamiać ją z własnym użytkownikiem, tak jak robią to inne usługi?Moja aplikacja korzysta z bibliotek (JAR) z innych projektów. Zwykle są one umieszczane w podkatalogu katalogu webapp
WEB-INF/lib
. Ponieważ włączenie bibliotek do pakietu nie jest dozwolone w Debianie, czy byłoby właściwe dodanie tych projektów jako zależności do mojego pakietu i utworzenie dowiązań symbolicznych w moim kataloguWEB-INF/lib
? Albo jak rozwiązać ten problem?Moja aplikacja internetowa musi zapisywać pliki (dane aplikacji). Ponieważ Tomcat działa jako użytkownik
www-data
na Debianie, jedynym katalogiem, w którym moja aplikacja może pisać, jest/var/lib/tomcat6/webapps
. Czy to właściwe miejsce na umieszczenie moich danych? A może mój pakiet powinien stworzyć coś w rodzaju/var/lib/my-webapp-name/
i zezwolić na zapis dla użytkownikawww-data
?
Jaki jest najlepszy sposób informowania deweloperów Debiana o tym pytaniu tutaj? – Witek
masz pakiet deb, aby zwalczyć wojnę na kocur. Czy możesz to udostępnić? Próbujemy zrobić to samo. –
To naprawdę musi być pakiet .deb? Możesz utworzyć docker conatiner (https://www.docker.com/) za pomocą tomcat i twojej aplikacji internetowej. Kontenery działają jak maszyny wirtualne, okno dokowane bud pozwala łatwo wprowadzać zmiany i udostępniać je. Twój klient musi tylko zainstalować docker z repozytorium Debiana i uruchomić jedno polecenie, aby pobrać i uruchomić swój kontener. Mogę podać ci przykład, jeśli można to uznać za rozwiązanie. Twój kontener może już mieć wbudowany tomcat, możesz po prostu zmodyfikować ten publiczny obraz kontenera (https://hub.docker.com/_/tomcat/). – Damian