Yadda ake Sanya Apache Tomcat a cikin Ubuntu


Idan kuna son gudanar da shafukan yanar gizo waɗanda suka haɗa da lambar sabar shafin uwar garken Java ko servlet ɗin Java, zaku iya amfani da Apache Tomcat. Sabar gidan yanar gizo ce ta budaddiyar tushe da kwandon servlet, wanda Gidauniyar Software ta Apache ta fitar.

Ana iya amfani da Tomcat azaman samfur na tsaye, tare da sabar gidan yanar gizon sa ko ana iya haɗa shi da wasu sabar yanar gizo kamar Apache ko IIS. Mafi kwanan nan na Tomcat shine 9.0.14 kuma yana gina saman Tomcat 8 da 8.5 kuma yana aiwatar da Servlet 4.0, JSP 2.2.

An sami ƙarin haɓakawa a cikin sabon sigar:

  • Ƙara tallafi don HTTP/2.
  • Ƙarin tallafi don amfani da OpenSSL don tallafin TLS tare da masu haɗin JSSE.
  • Ƙara goyon baya ga runduna kama-da-wane na TLS (SNI).

A cikin wannan koyawa za mu nuna muku yadda ake shigar Apache Tomcat 9 a cikin Ubuntu 18.10 da kuma tsohuwar sigar Ubuntu.

Mataki 1: Sanya Java

Don gudanar da aikace-aikacen gidan yanar gizo na Java, Tomcat yana buƙatar shigar da Java akan sabar. Don cika wannan buƙatun, za mu shigar da OpenJDK kamar yadda aka nuna.

$ sudo apt update
$ sudo apt install default-jdk

Mataki 2: Ƙirƙirar mai amfani da Tomcat

Don dalilan tsaro, yakamata a gudanar da Tomcat tare da mai amfani mara gata watau mara tushe. Abin da ya sa za mu ƙirƙiri mai amfani da ƙungiyar tomcat waɗanda za su gudanar da sabis ɗin. Fara da ƙirƙirar ƙungiyar tomcat:

$ sudo groupadd tomcat

Na gaba za mu ƙirƙiri mai amfani da tomcat, wanda zai zama memba na ƙungiyar tomcat. Wurin gida na wannan mai amfani zai zama/opt/tomcat saboda wannan shine inda zamu shigar da Tomcat. Za a saita harsashi zuwa /bin/ƙarya:

$ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Yanzu muna shirye don ci gaba mataki na gaba kuma zazzage Tomcat.

Mataki 3: Shigar da Apache Tomcat

Don zazzage sabuwar fakitin da ake da ita, kai zuwa shafin zazzagewar Tomcat kuma ɗauki sabuwar sigar.

A lokacin rubuta wannan koyawa, sabon sigar Tomcat shine 9.0.14. Don zazzage waccan sigar, canza kundin adireshi na yanzu zuwa wani abu dabam. Misali zaka iya amfani da /tmp:

# cd /tmp

Sannan amfani da umarnin wget don saukar da tarihin Tomcat:

$ wget http://apache.cbox.biz/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
$ wget https://www.apache.org/dist/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz.sha512

Idan kuna son tabbatar da jimlar sha512 na fayil ɗin zaku iya gudu:

$ sha512sum apache-tomcat-9.0.14.tar.gz
$ cat apache-tomcat-9.0.14.tar.gz.sha512

Sakamakon ƙimar (hash) na fayilolin biyu yakamata ya zama iri ɗaya.

Kamar yadda aka ambata a baya, za mu shigar da Tomcat a /opt/tomcat. Dole ne mu ƙirƙiri wannan littafin:

$ sudo mkdir /opt/tomcat

Kuma yanzu za mu iya fitar da kunshin da aka zazzage a cikin wannan sabon kundin adireshi:

$ sudo tar xzvf apache-tomcat-9.0.14.tar.gz -C /opt/tomcat --strip-components=1

Yanzu kewaya zuwa/fita/tomcat daga inda za mu sabunta ikon mallakar babban fayil da izini:

# cd /opt/tomcat

Kuma saita mai/opt/tomcat zuwa tomcat:

$ sudo chgrp -R tomcat /opt/tomcat

Zamu sabunta damar karanta ƙungiyar tomcat akan kundin adireshi kuma saita aiwatar da izini zuwa kundin adireshi:

$ sudo chmod -R g+r conf
$ sudo chmod g+x conf

Na gaba za mu sanya mai amfani da tomcat ya mallaki webapps, aiki, temp da kundayen adireshi:

$ sudo chown -R tomcat webapps/ work/ temp/ logs/

Yanzu an saita izini da abubuwan mallakar da suka dace kuma muna shirye don ƙirƙirar fayil ɗin farawa na tsarin, wanda zai taimaka mana sarrafa tsarin Tomcat.

Mataki 4: Ƙirƙirar Fayil ɗin Sabis na SystemD don Tomcat

Saboda muna so mu gudanar da Tomcat a matsayin sabis, za mu buƙaci samun fayil wanda zai taimake mu mu sarrafa tsarin cikin sauƙi. Don wannan dalili za mu ƙirƙiri fayil ɗin sabis na tsarin. Tomcat dole ne ya san inda Java yake akan tsarin ku.

Don nemo wurin yin amfani da umarni mai zuwa:

$ sudo update-java-alternatives -l

Fitowar wannan umarni zai nuna maka wurin JAVA_HOME.

Yanzu, ta amfani da wannan bayanin muna shirye don ƙirƙirar fayil ɗin sabis na Tomcat.

$ sudo vim  /etc/systemd/system/tomcat.service

Manna lambar da ke ƙasa a cikin fayil ɗin:

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

Tabbatar kun saita JAVA_HOME tare da na tsarin ku. Lokacin da kuka shirya, ajiye fayil ɗin kuma rufe shi. Yanzu, ta amfani da umarnin da ke ƙasa, sake shigar da tsarin daemon don ya sami sabon fayil ɗin sabis ɗin mu:

$ sudo systemctl daemon-reload

Sannan fara sabis ɗin Tomcat:

$ sudo systemctl start tomcat

Kuna iya tabbatar da matsayin sabis tare da:

$ sudo systemctl status tomcat

Yanzu zaku iya gwada Tomcat a cikin burauzar ku ta amfani da adireshin IP na tsarin ku wanda ke biye da tsohuwar tashar tashar 8080.

http://ip-address:8080

Sakamakon yakamata ku gani yayi kama da wanda aka nuna a hoton da ke ƙasa:

Idan ba ku ganin fitarwa na sama, kuna iya buƙatar ba da izinin tashar jiragen ruwa 8080 a cikin Tacewar zaɓinku kamar yadda aka nuna.

$ sudo ufw allow 8080

Idan kuna son Tomcat ya fara kan boot ɗin tsarin, gudu:

$ systemctl enable tomcat

Mataki 5: Saita Apache Tomcat

Tomcat yana da aikace-aikacen sarrafa gidan yanar gizo wanda ya zo an riga an shigar dashi. Domin amfani da shi, za mu buƙaci saitin tantancewa a cikin fayil ɗin tomcat-users.xml. Buɗe kuma shirya wancan fayil tare da editan rubutu da kuka fi so:

$ sudo vim /opt/tomcat/conf/tomcat-users.xml

Za mu ƙara mai amfani wanda zai iya samun dama ga masu gudanarwa da masu gudanarwa. Don saita irin wannan mai amfani, tsakanin tags , ƙara layin da ke biyowa:

<user username="Username" password="Password" roles="manager-gui,admin-gui"/>

Tabbatar canza:

  • Sunan mai amfani - tare da mai amfani da kuke son tantancewa.
  • Password – tare da kalmar sirri da kake son amfani da ita don tantancewa.

Tunda ta hanyar tsoho damar shiga Mai sarrafa Mai watsa shiri da Manajan an ƙuntata, za mu so ko dai cire ko canza waɗannan hane-hane. Don yin irin waɗannan canje-canje za ku iya loda fayiloli masu zuwa:

Don aikace-aikacen Manager:

$ sudo vim /opt/tomcat/webapps/manager/META-INF/context.xml

Don aikace-aikacen mai sarrafa mai watsa shiri:

$ sudo vim /opt/tomcat/webapps/host-manager/META-INF/context.xml

A cikin waɗancan fayilolin zaku iya ko dai yin sharhi kan ƙuntatawar IP ko ba da izinin adireshin IP na jama'a a ciki. Don manufar wannan koyawa, na yi sharhi akan layi:

Don yin canje-canjen mu kai tsaye, sake loda sabis ɗin tomcat tare da:

$ sudo systemctl restart tomcat 


Kuna iya gwada aikace-aikacen manajan ta hanyar shiga http://ipaddress:8080/manager/. Lokacin neman sunan mai amfani da kalmar sirri, yi amfani da waɗanda kuka tsara a baya. The interface ya kamata ka gani bayan haka yayi kama da haka:

Don samun damar mai sarrafa Mai watsa shiri, zaku iya amfani da http://ip-address:8080/host-manager/.

Amfani da kama-da-wane mai sarrafa manajan, zaku iya ƙirƙirar runduna kama-da-wane don aikace-aikacen Tomcat ɗinku.

Mataki 6: Gwajin Apache Tomcat Ta Ƙirƙirar Fayil na Gwaji

Kuna iya bincika idan komai yana aiki lafiya, ta ƙirƙirar fayil ɗin gwaji a cikin /opt/tomcat/webapps/ROOT/ directory.

Bari mu ƙirƙiri irin wannan fayil:

$ sudo vim /opt/tomcat/webapps/ROOT/tecmint.jsp

A cikin wancan fayil liƙa lambar mai zuwa:

<html>
<head>
<title>Tecmint post:TomcatServer</title>
</head>
<body>

<START OF JAVA CODES>
<%
    out.println("Hello World! I am running my first JSP Application");
    out.println("<BR>Tecmint is an Awesome online Linux Resource.");
%>
<END OF JAVA CODES>

</body>
</html>

Ajiye fayil ɗin kuma saita ikon mallakar kamar yadda aka nuna.

$ sudo chown tomcat: /opt/tomcat/apache-tomcat-8.5.14/webapps/ROOT/tecmint.jsp

Yanzu loda wancan fayil ɗin a cikin burauzar ku ta amfani da http://ip-address:8080/tecmint.jsp.

Shi ke nan! Kun kammala saitin uwar garken Tomcat na Apache kuma kun gudanar da lambar Java ɗin ku ta farko. Muna fatan tsarin ya kasance mai sauƙi kuma mai sauƙi a gare ku. Idan kun fuskanci kowace matsala, raba matsalolinku ta hanyar sharhin da ke ƙasa.