Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du kan skapa en virtuell dator (VM) som värd för din Java-webbapp i Azure Stack Hub. I den här artikeln installerar du, öppnar rätt portar och konfigurerar en Apache Tomcat-server på en virtuell Linux-dator i Azure Stack Hub. Sedan läser du in en WAR-fil (Java Web Application Resource) till servern. En WAR-fil används för att distribuera en samling Java-arkivfiler (JAR), komprimerade filer som innehåller Java-resurser som klasser, text, bilder, XML och HTML och andra resurser som används för att leverera ett webbprogram.
Skapa en virtuell dator
Konfigurera den virtuella datorn i Azure Stack Hub genom att följa anvisningarna i Distribuera en virtuell Linux-dator som värd för en webbapp i Azure Stack Hub.
Kontrollera att följande portar är tillgängliga i nätverksfönstret för den virtuella datorn:
Hamn Protokoll Beskrivning 80 HTTP Hypertext Transfer Protocol (HTTP) är det protokoll som används för att leverera webbsidor från servrar. Klienter ansluter via HTTP med ett DNS-namn eller EN IP-adress. 443 HTTPS Hypertext Transfer Protocol Secure (HTTPS) är en säker version av HTTP som kräver ett säkerhetscertifikat och möjliggör krypterad överföring av information. 22 SSH Secure Shell (SSH) är ett krypterat nätverksprotokoll för säker kommunikation. Du använder den här anslutningen med en SSH-klient för att konfigurera den virtuella datorn och distribuera appen. 3389 RDP Valfri. Med RDP (Remote Desktop Protocol) kan en fjärrskrivbordsanslutning använda ett grafiskt användargränssnitt på datorn. 8080 Anpassad Standardporten för Apache Tomcat-tjänsten. För en produktionsserver dirigerar du trafiken via 80 och 443.
Installera Java
Anslut till den virtuella datorn med hjälp av SSH-klienten. Anvisningar finns i Anslut via SSH med PuTTY.
Kör följande kommando i bash-prompten på den virtuella datorn:
sudo apt-get install default-jdkVerifiera installationen. Kör följande kommando när du fortfarande är ansluten till den virtuella datorn i SSH-sessionen:
java -version
Installera och konfigurera Tomcat
Anslut till den virtuella datorn med hjälp av SSH-klienten. Anvisningar finns i Anslut via SSH med PuTTY.
Skapa en Tomcat-användare genom att göra följande:
a. Skapa en ny Tomcat-grupp genom att köra följande kommando:
sudo groupadd tomcatb. Skapa en ny Tomcat-användare. Lägg till den här användaren i Tomcat-gruppen med en hemkatalog med /opt/tomcat. Du installerar Tomcat i den här katalogen:
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcatInstallera Tomcat genom att göra följande:
a. Hämta URL för tar-filen för den senaste versionen av Tomcat 8 från Tomcat 8-nedladdningssidan .
b. Använd cURL för att ladda ned den senaste versionen med hjälp av länken. Kör följande kommandon:
cd /tmp curl -O <URL for the tar for the latest version of Tomcat 8>c. Installera Tomcat i katalogen /opt/tomcat. Skapa mappen och öppna sedan arkivet:
sudo mkdir /opt/tomcat sudo tar xzvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1 sudo chown -R tomcat webapps/ work/ temp/ logs/Uppdatera behörigheterna för Tomcat genom att köra följande kommandon:
sudo chgrp -R tomcat /opt/tomcat sudo chmod -R g+r conf sudo chmod g+x confSkapa en systemd servicefil som möjliggör att köra Tomcat som en tjänst.
a. Tomcat måste veta var du har installerat Java. Den här sökvägen kallas vanligtvis JAVA_HOME. Hitta platsen genom att köra:
sudo update-java-alternatives -lDetta ger något som liknar följande:
Output java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64Du kan skapa variabelvärdet JAVA_HOME genom att ta sökvägen från resultatet och lägga till /jre. Om du till exempel använder föregående exempel /usr/lib/jvm/java-1.8.0-openjdk-amd64/jre.
b. Använd värdet från servern för att skapa systemtjänstfilen:
sudo nano /etc/systemd/system/tomcat.servicec. Klistra in följande innehåll i tjänstfilen. Ändra värdet för JAVA_HOME, om det behövs, så att det matchar det värde som du hittade i systemet. Du kanske också vill ändra inställningarna för minnesallokering som anges i CATALINA_OPTS:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre 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.targetd. Spara och stäng filen.
e. Ladda om systemdaemonen så att den känner till tjänstfilen:
sudo systemctl daemon-reloadf. Starta Tomcat-tjänsten:
sudo systemctl start tomcatg. Kontrollera att det startade utan fel genom att ange:
sudo systemctl status tomcatVerifiera Tomcat-servern. Tomcat använder port 8080 för att acceptera konventionella begäranden. Tillåt trafik till den porten genom att köra följande kommando:
sudo ufw allow 8080Om du inte har lagt till regler för inkommande portar för din virtuella Azure Stack Hub-dator lägger du till dem nu. Mer information finns i Skapa en virtuell dator.
Öppna en webbläsare i samma nätverk som Azure Stack Hub och öppna sedan servern yourmachine.local.cloudapp.azurestack.external:8080.
Apache Tomcat-sidan på servern läses in. Därefter konfigurerar du servern så att du kan komma åt serverstatus, managerapp och värdhanterare.
Aktivera tjänstfilen så att Tomcat startas automatiskt när du startar om servern:
sudo systemctl enable tomcatOm du vill ge dig själv åtkomst till webbhanteringsgränssnittet konfigurerar du Tomcat-servern.
a. Redigera tomcat-users.xml-filen och definiera en roll och användare så att du kan logga in. Definiera användaren för att komma åt
manager-guiochadmin-gui.sudo nano /opt/tomcat/conf/tomcat-users.xmlb. Lägg till följande element i avsnittet
<tomcat-users>:<role rolename="tomcat"/> <user username="<username>" password="<password>" roles="tomcat,manager-gui,admin-gui"/>Den slutliga filen kan till exempel se ut ungefär så här:
<tomcat-users xmlns="http://tomcat.apache.org/xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd" version="1.0"> <role rolename="tomcat"/> <user username="tomcatuser" password="changemepassword" roles="tomcat,manager-gui,admin-gui"/> </tomcat-users>c. Spara och stäng filen.
Tomcat begränsar åtkomsten till Manager och Host Manager appar till anslutningar som kommer från servern. Eftersom du installerar Tomcat på en virtuell dator i Azure Stack Hub vill du ta bort den här begränsningen. Ändra IP-adressbegränsningarna för dessa appar genom att redigera lämpliga context.xml filer.
a. Uppdatera context.xml i Manager-appen:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xmlb. Kommentera ut IP-adressbegränsningen för att tillåta anslutningar var som helst eller lägg till IP-adressen för den dator som du använder för att ansluta till Tomcat.
<Context antiResourceLocking="false" privileged="true" > <!--<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />--> </Context>c. Spara och stäng filen.
d. Uppdatera context.xml Host Manager-appen med en liknande uppdatering:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xmle. Spara och stäng filen.
Om du vill uppdatera servern med ändringarna startar du om Tomcat-tjänsten:
sudo systemctl restart tomcatÖppna en webbläsare i samma nätverk som Azure Stack Hub och öppna sedan servern: yourmachine.local.cloudapp.azurestack.external:8080.
a. Om du vill granska statusen för Tomcat-servern och kontrollera att du har åtkomst väljer du Serverstatus.
b. Logga in med dina Tomcat-autentiseringsuppgifter.
Skapa en app
Du måste skapa en WAR-fil för att distribuera till Tomcat. Om du bara vill kontrollera din miljö kan du hitta ett exempel på WAR på Apache Tomcat-webbplatsen.
Vägledning om hur du utvecklar Java-appar i Azure finns i Skapa och distribuera Java-appar i Azure.
Distribuera och köra appen
Anslut till den virtuella datorn med hjälp av SSH-klienten. Anvisningar finns i Anslut via SSH med PuTTY.
Om du vill uppdatera servern med ditt apppaket stoppar du Tomcat-tjänsten:
sudo systemctl stop tomcatFör att kunna skriva till mappen webapps lägger du till FTP-användaren i Tomcat-gruppen. Ftp-användaren är den användare som du definierar när du skapar den virtuella datorn i Azure Stack Hub.
sudo usermod -a -G tomcat <VM-user>Om du vill rensa mappen webapps och sedan läsa in din nya eller uppdaterade WAR ansluter du till den virtuella datorn med FileZilla. Anvisningar finns i Anslut med SFTP med FileZilla.
a. Rensa TOMCAT_HOME/webappar.
b. Lägg till din WAR i TOMCAT_HOME/webapps (till exempel /opt/tomcat/webapps/).
Tomcat expanderar och distribuerar programmet automatiskt. Du kan visa den med hjälp av DNS-namnet som du skapade tidigare. Till exempel:
http://yourmachine.local.cloudapp.azurestack.external:8080/sample
Nästa steg
- Läs mer om hur du utvecklar för Azure Stack Hub.
- Lär dig mer om vanliga distributioner av Azure Stack Hub som IaaS.
- Mer information om programmeringsspråket java och hitta ytterligare resurser för Java finns i Java.com.