Apache Tomcat, Apache Software Foundation (ASF) tarafından geliştirilen açık kaynaklı bir web sunucusu ve sunucu uygulaması kapsayıcısıdır.
Tomcat, Oracle'ın Java Servlet ve JavaServer Pages spesifikasyonlarını uygular ve Java kodunun çalıştırılması için saf bir Java HTTP web sunucusu ortamı sağlar.
Bu eğitimde, Tomcat'i konteyner olarak kullanarak bir Tomcat 'merhaba dünya' uygulamasını dağıtmak için Docker ve Tomcat'i nasıl birleştireceğimizi öğreneceğiz.
Gereksinimler:
Bu eğitimde sağlanan talimatları ve kodu başarıyla takip etmek ve kullanmak için aşağıdakilere sahip olduğunuzdan emin olun:
- Ana makinenize Docker Engine'i yüklediniz
- Java kodunuzu test etmek için makinenize Java JDK yüklendi (isteğe bağlı)
- Kaynak kodunu ve Docker yapılandırmalarını düzenlemek için bir metin düzenleyici
Verilen gereksinimler karşılandığında devam edebilir ve Docker kullanarak bir Tomcat uygulamasını nasıl dağıtacağımızı öğrenebiliriz.
Tomcat Görüntüsünü Docker'da çekin
Neyse ki bir Tomcat uygulamasını çalıştırmak için tüm araçları içeren bir temel imaj yapılandırmamıza gerek yok. Tomcat imajını Docker Hub'dan kolayca kullanabiliriz.
İmajı çekmek için şu komutu çalıştırabiliriz:
$ liman işçisi erkek kediyi çek
Merhaba Dünya Uygulaması Oluşturun
Bir sonraki adım “Merhaba Dünya” uygulamasını oluşturmaktır. Kaynak kodunuzu saklamak için bir dizin oluşturarak başlayın ve dizine gidin.
$ mkdir Selam Dünya && CD Selam Dünya
Kök dizinin içinde bir webapp klasörü oluşturun ve bunun içinde bir WEB-INF klasörü oluşturun.
Dizin yapınız şöyle görünmelidir:
Selam Dünya /└── web uygulaması
└── WEB-INF
3 dizinler, 0 Dosyalar
Daha sonra WEB-INF dizinine gidin ve aşağıdaki kodla bir “web.xml” dosyası oluşturun:
< internet uygulaması XML'ler = 'http://xmlns.jcp.org/xml/ns/javaee'
XML'ler: xsı = 'http://www.w3.org/2001/XMLSchema-instance'
xsi: şemaKonumu = 'http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd'
versiyon = '4.0' >
< sunucu uygulaması >
< sunucu uygulaması adı > Selam Dünya sunucu uygulaması adı >
< servlet sınıfı > MerhabaDünyaServlet servlet sınıfı >
sunucu uygulaması >
< sunucu uygulaması eşlemesi >
< sunucu uygulaması adı > Selam Dünya sunucu uygulaması adı >
< URL modeli >/ Merhaba URL modeli >
sunucu uygulaması eşlemesi >
internet uygulaması >
Dosyayı kaydedin ve düzenleyiciyi kapatın.
Terminal pencerenize geri döndüğünüzde, WEB-INF/classes dizini içinde bir “HelloWorldServlet.java” oluşturun.
$ mkdir sınıflar$ dokunmak MerhabaDünyaServlet.java
Uygulamanın içeriğini aşağıda gösterildiği gibi ekleyin:
javax.servlet.http'yi içe aktarın. * ;
Java.io'yu içe aktarın. * ;
genel sınıf HelloWorldServlet, HttpServlet'i genişletiyor {
genel geçersiz doGet ( HttpServletRequest isteği, HttpServletResponse yanıtı )
ServletException, IOException'ı atar {
yanıt.setContentType ( 'metin/html' ) ;
PrintWriter çıkışı = yanıt.getWriter ( ) ;
out.println ( '' ) ;
out.println ( '
out.println ( '
out.println ( '
Merhaba Dünya!
' ) ;out.println ( '