Installer Plesk på CentOS 7
Bruker du et annet system? Plesk er et proprietært kontrollpanel for webverten som lar brukere administrere sine personlige og/eller klienters nettsteder, databaser
GoCD er et åpen kildekodesystem for kontinuerlig levering og automatisering. Den lar deg modellere komplekse arbeidsflyter ved å bruke dens parallelle og sekvensielle utførelse. Verdistrømkartet lar deg enkelt visualisere en kompleks arbeidsflyt. GoCD lar deg enkelt sammenligne to bygg og distribuere hvilken som helst versjon av applikasjonen du ønsker. GoCD-økosystemet består av GoCD-server og GoCD-agent. GoCD er ansvarlig for å kontrollere alt som å kjøre det nettbaserte brukergrensesnittet og administrere og gi jobber til agenten. Go-agenter er ansvarlige for å kjøre jobbene og distribusjonene.
For denne opplæringen vil vi bruke 192.168.1.1
som den offentlige IP-adressen og gocd.example.com
som domenenavnet som pekte mot Vultr-forekomsten. Sørg for å erstatte alle forekomster av eksempeldomenenavnet og IP-adressen med den faktiske.
Oppdater basissystemet ditt ved å bruke veiledningen Hvordan oppdatere CentOS 7 . Når systemet ditt har blitt oppdatert, fortsett å installere Java.
GoCD krever Java versjon 8 og støtter både Oracle Java og OpenJDK. I denne opplæringen skal vi installere Java 8 fra OpenJDK.
OpenJDK kan enkelt installeres, siden pakken er tilgjengelig i standarddepotet YUM
.
sudo yum -y install java-1.8.0-openjdk-devel
Hvis Java er riktig installert, vil du kunne bekrefte versjonen.
java -version
Du vil få en lignende utgang til følgende tekst.
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
Før vi kan gå videre, må vi sette opp JAVA_HOME
og JRE_HOME
miljøvariablene. Finn den absolutte banen til den kjørbare Java-filen i systemet ditt.
readlink -f $(which java)
Følgende tekst sendes ut til terminalen din.
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre/bin/java
Nå satt de JAVA_HOME
og JRE_HOME
miljøvariabler i henhold til banen for Java-katalogen.
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre" >> ~/.bash_profile
Merk: Pass på at du bruker Java-banen du har fått på systemet. Banen som brukes i denne opplæringen kan endres når en ny versjon av Java 8 utgis.
Kjør bash_profile
filen.
source ~/.bash_profile
Nå kan du kjøre echo $JAVA_HOME
kommandoen for å sikre at miljøvariabelen er satt.
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
GoCD er skrevet i Java, derfor er Java den eneste avhengigheten for å kjøre GoCD. GoCD kan installeres ved hjelp av YUM
. Installer det offisielle depotet i systemet.
sudo curl https://download.gocd.org/gocd.repo -o /etc/yum.repos.d/gocd.repo
Installer GoCD-serveren i systemet ditt.
sudo yum install -y go-server
Start GoCD og aktiver den til å starte automatisk ved oppstart.
sudo systemctl start go-server
sudo systemctl enable go-server
Før vi får tilgang til GoCD-dashbordet, la oss lage en ny katalog for å lagre artefaktene. Artefakter kan lagres på samme disk som operativsystemet og applikasjonene er installert på. Alternativt kan du bruke en dedikert disk eller blokklagringsstasjon for å lagre artefaktene.
Hvis du ønsker å bruke den samme disken til å lagre artefaktene, er det bare å opprette en ny katalog og oppgi eierskapet til GoCD-brukeren.
sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts
GoCD-programvaren anbefaler å bruke en ekstra partisjon eller stasjon for å lagre artefaktene. I en kontinuerlig integrasjons- og leveringsplattform genereres artefakter veldig ofte. Diskplassen reduseres over tid når nye artefakter genereres kontinuerlig. På et tidspunkt vil systemet gå tom for ledig diskplass og tjenestene som kjører på systemet vil mislykkes. For å overvinne dette problemet kan du legge ved en ny Vultr-blokklagringsstasjon for å lagre artefaktene. Hvis du fortsatt ønsker å lagre gjenstander på samme stasjon, hopper du til delen "Oppsett brannmur".
Distribuer en ny blokklagringsstasjon og koble den til GoCD-serverforekomsten. Opprett nå en ny partisjon på blokklagringsenheten.
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
Opprett filsystemet på den nye disken.
sudo mkfs.ext4 /dev/vdb1
Monter blokklagringsstasjonen.
sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts
Kjør nå df
, og du vil se den nye blokklagringsstasjonen montert på /mnt/artifacts
.
[user@vultr ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20616252 6313892 13237464 33% /
...
/dev/vdb1 10188052 36888 9610596 1% /mnt/artifacts
Gi eierskapet til katalogen til GoCD-brukeren.
sudo chown -R go:go /mnt/artifacts
Endre brannmurkonfigurasjonen for å tillate porter 8153
og 8154
gjennom brannmuren. Port 8153
lytter etter usikrede tilkoblinger og port 8154
for sikre tilkoblinger.
sudo firewall-cmd --zone=public --add-port=8153/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8154/tcp --permanent
sudo firewall-cmd --reload
Nå kan du få tilgang til GoCD-dashbordet på http://192.168.1.1:8153
. For å få tilgang til GoCD-dashbordet på en sikker tilkobling, gå til https://192.168.1.1:8154
. Du vil få en feil som viser at sertifikatene ikke er gyldige. Du kan trygt ignorere feilen ettersom sertifikatene er selvsignerte. Av sikkerhetshensyn bør du alltid bruke dashbordet over en sikker tilkobling.
Før du setter opp en ny pipeline, naviger til " Admin >> Server Configuration
" fra den øverste navigasjonslinjen.
Skriv inn URL-en til ditt usikrede nettsted i " Site URL
"-feltet og sikret nettsted i " Secure Site URL
"-feltet.
Deretter oppgir du SMTP-serverdetaljer for å sende e-postvarsler fra GoCD.
Til slutt, oppgi banen til stedet der du ønsker å lagre gjenstandene. Hvis du har valgt å lagre artefaktene på samme disk som operativsystemet, skriv inn /opt/artifacts
; hvis du har valgt å legge til en blokklagringsstasjon, kan du angi /mnt/artifacts
.
Du kan også konfigurere GoCD til å automatisk slette de gamle artefaktene. Konfigurer det neste alternativet i henhold til diskstørrelsen din. Alternativet for automatisk sletting tar imidlertid ikke en sikkerhetskopi av dine gamle artefakter. For å ta en sikkerhetskopi manuelt og deretter slette de gamle artefaktene, deaktiver automatisk sletting ved å velge alternativet " Never
" for alternativet " Auto delete old artifacts
".
Du må starte GoCD-serveren på nytt slik at de nye endringene blir tatt i bruk.
sudo systemctl restart go-server
Som standard er ikke GoCD-dashbordet konfigurert til å bruke noen form for autentisering, men det støtter autentisering ved hjelp av en passordfil og LDAP. I denne opplæringen vil vi sette opp passordbasert autentisering.
Merk : Konfigurering av autentisering er et valgfritt trinn, men det anbefales sterkt for offentlige servere, som Vultr.
Installer Apache-verktøy slik at vi kan bruke htpasswd
kommandoen til å lage en kryptert passordfil.
sudo yum -y install httpd-tools
Lag en passordfil med htpasswd
kommandoen ved å bruke Bcrypt-kryptering.
sudo htpasswd -B -c /etc/go/passwd_auth goadmin
Oppgi passordet til brukeren to ganger. Du vil se følgende utgang.
[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin
Du kan legge til så mange brukere du vil ved å bruke samme kommando ovenfor, men fjerne -c
alternativet. Det -c
alternativet vil erstatte den eksisterende filen, erstatte gamle brukere med den nye brukeren.
sudo htpasswd -B /etc/go/passwd_auth gouser1
Since, we have created the password file, access the GoCD dashboard again. Navigate to "Admin >> Security >> Authorization Configurations
" from the top navigation bar. Click on the Add
button and provide an ID. Choose "Password File Authentication Plugin for GoCD
" for plugin ID and direct the path to the password file. Now click on the "Check Connection
" button to verify that GoCD can use the password file for authentication.
Finally, save the authentication method. Reload the dashboard and it will automatically log you out. You will see a login screen now. Log in using the credentials created earlier.
You will need to promote the administrator user manually, otherwise, all the users will have administrator privileges. Navigate to "Admin >> User Summary
" from the top navigation bar.
Now select the admin user you've created and click on the "Roles
" drop-down. Promote the user to the only administrator by selecting the "Go System Administrator
" checkbox.
To add the users in GoCD created in the password file, click on the "ADD
" button and search for the user to add them. Users are also automatically added to the GoCD dashboard on their first login. Obviously, for users to log in, they must be added to the password file we have created earlier.
By default, GoCD listens to ports 8153
and 8154
on secure connections. Though port 8154
provides a secure connection to the application, it also displays browser errors as it uses a self-signed certificate. In this section of the tutorial, we will install and secure Nginx with Let's Encrypt free SSL certificate. The Nginx web server will work as a reverse proxy to forward the incoming requests to GoCD's HTTP
endpoint.
Install Nginx.
sudo yum -y install nginx
Start Nginx and enable it to automatically start at boot time.
sudo systemctl start nginx
sudo systemctl enable nginx
Install Certbot, which is the client application for Let's Encrypt CA.
sudo yum -y install certbot
Before you can request certificates, you will need to allow ports 80
and 443
, or standard HTTP
and HTTPS
services, through the firewall. Also, remove port 8153
, which listens to the unsecured connections.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --zone=public --remove-port=8153/tcp --permanent
sudo firewall-cmd --reload
Note: To obtain certificates from Let's Encrypt CA, the domain for which the certificates are to be generated must be pointed towards the server. If not, make the necessary changes to the DNS records of the domain and wait for the DNS to propagate before making the certificate request again. Certbot checks the domain authority before providing the certificates.
Generate the SSL certificates.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d gocd.example.com
The generated certificates are likely to be stored in /etc/letsencrypt/live/gocd.example.com/
. The SSL certificate will be stored as fullchain.pem
and private key will be stored as privkey.pem
.
La oss kryptere sertifikater utløper om 90 dager, så det anbefales å sette opp automatisk fornyelse av sertifikatene ved hjelp av cron-jobber.
Åpne cron-jobbfilen.
sudo crontab -e
Legg til følgende linje på slutten av filen.
30 5 * * * /usr/bin/certbot renew --quiet
Cron-jobben ovenfor kjøres hver dag klokken 05.30. Hvis sertifikatet skal utløpe, vil det automatisk fornyes.
Endre nå Nginx standard konfigurasjonsfil for å ta ut default_server
linjen.
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
Opprett en ny konfigurasjonsfil for GoCD-nettgrensesnittet.
sudo nano /etc/nginx/conf.d/gocd.conf
Fyll ut filen.
upstream gocd {
server 127.0.0.1:8153;
}
server {
listen 80 default_server;
server_name gocd.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 default_server;
server_name gocd.example.com;
ssl_certificate /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gocd.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/gocd.access.log;
location / {
proxy_pass http://gocd;
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_redirect off;
}
location /go {
proxy_pass http://gocd/go;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
Se etter feil i den nye konfigurasjonsfilen.
sudo nginx -t
Hvis du ser følgende utgang, er konfigurasjonen feilfri.
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Hvis du har mottatt en form for feil, sørg for å dobbeltsjekke banen til SSL-sertifikatene. Start Nginx-nettserveren på nytt for å implementere endringen i konfigurasjonen.
sudo systemctl restart nginx
Nå kan du få tilgang til GoCD-dashbordet på https://gocd.example.com
. Logg på dashbordet med administratorlegitimasjonen og naviger til " Admin >> Server Configuration
" fra den øverste navigasjonslinjen.
Sett " Site URL
" og " Secure Site URL
" til https://gocd.example.com
. Porten 8154
må fortsatt være tilgjengelig gjennom brannmuren slik at de eksterne agentene kan koble til serveren via porten 8154
, i tilfelle de ikke kan koble seg til via standardporten HTTP
.
I GoCD kontinuerlig integrasjonsmiljø er GoCD-agenter arbeiderne som er ansvarlige for utførelsen av alle oppgavene. Når en endring i kilden oppdages, utløses rørledningen og jobbene tildeles tilgjengelige arbeidere for utførelse. Agenten utfører deretter oppgaven og rapporterer den endelige statusen etter utførelse.
For å kjøre en pipeline må minst én agent være konfigurert. Fortsett å installere GoCD-agenten på GoCD-serveren.
Siden vi allerede har importert GoCD-lageret til serveren, kan vi installere Go Agent direkte.
sudo yum install -y go-agent
Start nå GoCD-serveren og aktiver den til å starte automatisk ved oppstart.
sudo systemctl start go-agent
sudo systemctl enable go-agent
GoCD-agenten som kjører på den lokale verten blir automatisk aktivert når den oppdages.
Bruker du et annet system? Plesk er et proprietært kontrollpanel for webverten som lar brukere administrere sine personlige og/eller klienters nettsteder, databaser
Squid er et populært, gratis Linux-program som lar deg lage en webproxy for videresending. I denne veiledningen vil du se hvordan du installerer Squid på CentOS for å gjøre deg om
Introduksjon Lighttpd er en apachegaffel som har som mål å være mye mindre ressurskrevende. Den er lett, derav navnet, og er ganske enkel å bruke. Installer
VULTR har nylig gjort endringer på sin side, og alt skal nå fungere bra ut av boksen med NetworkManager aktivert. Skulle du ønske å deaktivere
Icinga2 er et kraftig overvåkingssystem, og når det brukes i en master-klient-modell, kan det erstatte behovet for NRPE-baserte overvåkingskontroller. Mester-klienten
Bruker du et annet system? Apache Cassandra er et gratis og åpen kildekode NoSQL-databasebehandlingssystem som er designet for å gi skalerbarhet, høy
Bruker du et annet system? Microweber er en åpen kildekode dra og slipp CMS og nettbutikk. Microweber-kildekoden er vert på GitHub. Denne guiden vil vise deg
Bruker du et annet system? Vanilla forum er en åpen kildekode-forumapplikasjon skrevet i PHP. Det er en fullt tilpassbar, enkel å bruke og støtter ekstern
Bruker du et annet system? Mattermost er et åpen kildekode, selvdrevet alternativ til Slack SAAS-meldingstjenesten. Med andre ord, med Mattermost kan du ca
Hva du trenger En Vultr VPS med minst 1 GB RAM. SSH-tilgang (med root/administratorrettigheter). Trinn 1: Installere BungeeCord Først
Plesk-kontrollpanelet har en veldig fin integrasjon for Lets Encrypt. Lets Encrypt er en av de eneste SSL-leverandørene som gir ut sertifikater komplett
Lets Encrypt er en sertifiseringsinstans dedikert til å tilby SSL-sertifikater gratis. cPanel har bygget en ryddig integrasjon slik at du og din klient
Bruker du et annet system? Concrete5 er et åpen kildekode CMS som tilbyr mange karakteristiske og nyttige funksjoner for å hjelpe redaktører med å produsere innhold enkelt og
Bruker du et annet system? Review Board er et gratis og åpen kildekodeverktøy for gjennomgang av kildekode, dokumentasjon, bilder og mye mer. Det er nettbasert programvare
I denne veiledningen lærer du hvordan du setter opp HTTP-autentisering for en Nginx-webserver som kjører på CentOS 7. Krav For å komme i gang trenger du
Bruker du et annet system? GoAccess er en åpen kildekode-nettlogganalysator. Du kan bruke den til analyse av logger på sanntidsbasis i enten terminalen eller
YOURLS (Your Own URL Shortener) er en åpen kildekode-applikasjon for URL-forkorting og dataanalyse. I denne artikkelen vil vi dekke installasjonsprosessen
Bruker du et annet system? Introduksjon ArangoDB er en åpen kildekode NoSQL-database med en fleksibel datamodell for dokumenter, grafer og nøkkelverdier. Det er
Innledning /etc/-katalogen spiller en kritisk rolle i måten et Linux-system fungerer på. Grunnen til dette er fordi nesten alle systemkonfigurasjoner
Mange systemadministratorer administrerer store mengder servere. Når filer må åpnes på tvers av forskjellige servere, logger du på hver enkelt individuelt ca
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer