Opsæt Cacti på Debian Jessie
Introduktion Cacti er et open source overvågnings- og grafværktøj, som er fuldt baseret på RRD-data. Gennem Cacti kan du overvåge næsten enhver type enhed
Hapi.js er en rig, robust og kraftfuld Node.js-ramme designet til at bygge webapplikationer i Node.js-økosystemet. Dens enkle design gør den nem at komme i gang med. Hapi bruger mange af de nyeste JavaScript ES6-funktioner i sin kerne, såsom ES6-løfter. For dem af jer, der har brugt Express før, giver Hapi dig mulighed for at prøve noget nyt og opleve alle de nyeste JavaScript-funktioner.
I denne tutorial vil vores mål være at oprette en grundlæggende Hapi.js-webside, som hostes fra vores Vultr VPS, på Ubuntu 16.04 LTS. For dem, der har et domæne til deres websted, vil vi bruge en omvendt proxy til at linke vores domæne til vores websted. Til sidst vil vi lære at styre det med en procesleder. Nu hvor vi har fået det af vejen, lad os komme i gang.
Vi bliver nødt til at installere Node.js. For at gøre det på Ubuntu 16.04 LTS skal du følge disse instruktioner.
Vi bliver nødt til at tilføje NodeSource APT-lageret, som indeholder den seneste LTS-udgivelse af Node.js.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Vi er ved at downloade et script, som vi vil bruge til at tilføje depotet til vores kildeliste, samt installere Node.js fra NodeSource-depotet.
Udover at installere selve Node.js, skal vi også installere nogle nødvendige byggeværktøjer, som vil hjælpe med at bygge de moduler, som vi måtte have brug for at installere.
sudo apt-get install -y build-essential
Dette downloader og installerer blot byggeværktøjerne fra depotet.
Det er god praksis at udpege en mappe, som vi vil bruge til vores applikation, som vil indeholde alle vores applikations data, såsom konfigurationsfiler og opstartsscripts. Opret en mappe, og giv den et navn, hvad du vil. Af hensyn til denne tutorial antager jeg, at du har navngivet den site
.
mkdir site
Når du har lavet mappen, kan vi nu skifte til den. Sørg for, at du er i den mappe, du lige har oprettet, og start NPM-pakkeguiden.
npm init
Det vil bede dig om at indtaste et par forskellige ting, såsom dit programnavn, startfil, licens og så videre. De fleste felter kan du lade være som standard, bortset fra de mere oplagte felter, såsom navnet på din ansøgning. I sidste ende vil det se sådan ud:
{
"name": "site",
"version": "1.0.0",
"description": "Hapi.js site",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "rich",
"license": "MIT"
}
Når du er tilfreds med resultatet, skal du klikke for ENTERat gemme filen.
Nu hvor din mappe er blevet konstrueret, kan vi nu fortsætte med at installere Hapi.js. Som nævnt før vil vi bruge NPM til at downloade Hapi.js, såvel som dets afhængigheder, til vores projekt. Kør følgende i projektbiblioteket.
npm install hapi.js
Dette downloader Hapi.js fra NPM og installerer det i vores projektmappe. I samme kørsel downloades alle afhængigheder, som Hapi.js kan stole på, også for vores bekvemmelighed.
Nu er det tid til at konfigurere vores grundlæggende Hapi.js-applikationsfil. Dette vil indeholde al vores kode til applikationen. Længere hen ad vejen kan vi udvide vores ansøgningskode og tilføje flere ting til den, som vi finder passende.
Dernæst vil vi oprette vores startfil. Gå tilbage til main
sektionen af din package.json
fil for at bestemme præcist, hvordan filen skal navngives. Da jeg brugte standardnavneskemaet, vil vores fil hedde index.js
.
nano index.js
Når du er inde i nano-teksteditoren, skal du oprette din basisapplikationskode som sådan.
const Hapi=require('hapi');
const server=Hapi.server({
host:'localhost',
port: 3000
});
server.route({
method:'GET',
path:'/',
handler:((request,h)) => {
return 'Sample Hapi.js Application';
}
});
async function start() {
try {
await server.start();
} catch (err) {
console.log(err);
process.exit(1);
}
console.log(`Our server is running! ${server.info.uri}`);
};
start();
Først importerer vi Hapi-modulet. Derefter initialiserer vi vores serverkonstruktør, som indeholder den vært, vi ønsker at køre serveren på, samt porten, som er 3000
til denne tutorial. Dernæst opsætter vi en grundlæggende router, som indikerer, at når nogen besøger webstedet, vil de blive mødt med en simpel besked. For at toppe det hele, har vi en async funktion, til at starte vores server, som vil logge på konsollen, som vores server kører. Når du er færdig, skal du gemme og lukke filen ( CTRL+ X)
Nu hvor vores hovedfil er sat op, er vi klar til at starte vores applikation.
node index.js
Hvis du ser " Our server is running!
" i konsollen, starter serveren med succes.
Da Nginx er tilgængelig i standard Ubuntu-lagre, er installationen ligetil. Du skal blot opdatere dine pakkelister og installere det.
sudo apt update
sudo apt install nginx -y
Efter at have opdateret pakkelisterne, vil Nginx og dets afhængigheder blive installeret.
For at Nginx kan omvendt proxy vores applikation, skal vi oprette en konfigurationsfil. Denne konfigurationsfil vil indeholde oplysninger om vores applikation, som Nginx vil bruge til den omvendte proxy.
Slet standardkonfigurationen, som Nginx oprettede, da vi senere vil erstatte den med vores egen.
sudo rm /etc/nginx/sites-enabled/default
Lav en ny fil i sites-available
mappen. Hvad angår navngivning, kan vi site
for nemheds skyld holde os til ganske enkelt.
sudo nano /etc/nginx/sites-available/site
Indsæt følgende i filen, og gem.
server {
listen 80;
location / {
proxy_set_header X-Real-IP
$remote_addr;
proxy_set_header
X-Forwarded-For
$proxy_add_x_forwarded_for;
proxy_set_header Host
$http_host;
proxy_set_header
X-NginX-Proxy true; proxy_pass
http://127.0.0.1:3000/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade
$http_upgrade;
proxy_set_header Connection
"upgrade";
proxy_redirect off;
proxy_set_header
X-Forwarded-Proto $scheme;
}
}
I denne fil fortæller vi Nginx at lytte på port 80
. Vi indstiller også proxy-passthrough til localhost
adressen og porten 3000
, som er den samme port som vores Hapi-applikation.
Nu kan du navigere tilbage til din applikationsmappe og starte siden. Når siden er startet, skal du blot navigere til http://yourdomain.com
eller http://yourip
, og du vil se teksten " Hello World
".
PM2 kan findes i NPM-lageret, og du kan installere det globalt for at være tilgængeligt hvor som helst, som sådan.
sudo npm install pm2 -g
Den -g
flaget i slutningen indikerer, at vi ønsker at installere modulet til globale moduler mappe, som vil give os mulighed for at bruge det uden for vores projekt mappe. Dette bruges for at vores projekt kan opføre sig som en normal systemapplikation.
Når du har installeret PM2, skal du navigere tilbage til dit projektbibliotek. Syntaksen for at starte vores applikation vil være lidt anderledes nu. Sådan vil vi gøre det med PM2.
pm2 start index.js --name site
Vi bruger PM2 startfunktionen, som grundlæggende opretter en profil til vores applikation, under navnet site
. Efter at have kørt denne kommando, starter dit websted, men du vil bemærke, at logfilerne ikke vises. Det er fordi den måde, vi ser logfiler på nu, er anderledes.
pm2 logs site
Du kan endda angive, hvor mange linjer med logfiler du vil se, med --lines
argumentet.
Du har med succes opsat en Hapi.js-webserver, omvendt proxy med Nginx og lært, hvordan du bedre kan administrere den med PM2. Med denne viden kan du udvide denne tutorial yderligere og lave en meget avanceret Hapi.js-applikation. For at lære mere om mulighederne ved Hapi, besøg deres officielle dokumentation . Hvis du gerne vil lære mere om mulighederne ved PM2, se deres hurtigstartguide .
Introduktion Cacti er et open source overvågnings- og grafværktøj, som er fuldt baseret på RRD-data. Gennem Cacti kan du overvåge næsten enhver type enhed
Introduktion Lets Encrypt er en certifikatmyndighedstjeneste, der tilbyder gratis TLS/SSL-certifikater. Installationsprocessen forenkles af Certbot,
Bruger du et andet system? Denne vejledning viser dig, hvordan du installerer groupware iRedMail på en ny installation af Debian Wheezy. Du bør bruge en serve
Introduktion Lighttpd er en forgrening af Apache, der sigter mod at være meget mindre ressourcekrævende. Den er let, deraf navnet, og den er ret enkel at bruge. Installer
1. Virtualmin/Webmin Virtualmin er et kraftfuldt og fleksibelt webhotel kontrolpanel til Linux og UNIX systemer baseret på den velkendte Open Source web-base
Yii er en PHP-ramme, der giver dig mulighed for at udvikle applikationer hurtigere og nemmere. Installation af Yii på Ubuntu er ligetil, da du vil lære nøjagtigt
Screen er et program, der tillader flere terminalsessioner inden for et vindue. Dette giver dig mulighed for at simulere flere terminalvinduer, hvor det ma
Introduktion Logrotate er et Linux-værktøj, der forenkler administrationen af logfiler. Det kører typisk en gang om dagen via et cron-job og administrerer logbasen
VULTR har for nylig foretaget ændringer i deres ende, og alt skulle nu fungere fint ud af boksen med NetworkManager aktiveret. Skulle du ønske at deaktivere
Icinga2 er et kraftfuldt overvågningssystem, og når det bruges i en master-klient-model, kan det erstatte behovet for NRPE-baserede overvågningstjek. Mester-klienten
I denne artikel vil vi se, hvordan du kompilerer og installerer Nginx mainline fra de officielle kilder til Nginx med PageSpeed-modulet, som giver dig mulighed for at
Bruger du et andet system? Apache Cassandra er et gratis og open source NoSQL-databasestyringssystem, der er designet til at give skalerbarhed, høj
Bruger du et andet system? Introduktion Kanboard er et gratis og open source projektstyringssoftwareprogram, som er designet til at lette og visualisere
Bruger du et andet system? Introduktion Kanboard er et gratis og open source projektstyringssoftwareprogram, som er designet til at lette og visualisere
Bruger du et andet system? Gitea er et alternativt open source, selvhostet versionskontrolsystem drevet af Git. Gitea er skrevet på Golang og er
Bruger du et andet system? Gitea er et alternativt open source, selv-hostet versionskontrolsystem drevet af git. Gitea er skrevet på Golang og er
Bruger du et andet system? Thelia er et open source-værktøj til at skabe e-business-websteder og administrere onlineindhold skrevet i PHP. Thelia kildekode i
Hvad er Dirty Cow (CVE-2016-5195)? Dirty Cow-sårbarheden udnyttes gennem, hvordan Linux behandler kode. Det giver en uprivilegeret bruger mulighed for at gai
Det kan være farligt at have kun én bruger, som er root. Så lad os ordne det. Vultr giver os friheden til at gøre som vi vil med vores brugere og vores servere
Adminer er et letvægtsalternativ til phpMyAdmin. Til sammenligning er dens samlede pakkestørrelse 400KB mod 4,2 MB phpMyAdmin. I modsætning til phpMyAdmin, som
Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.
Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.
Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.
Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.
Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...
Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.
Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af dataene. Denne blog dækker udviklingen af datalagring på basis af en infografik.
Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.
I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.
For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af mac-maskiner. Læs denne artikel for at lære mere