Installera Plesk på CentOS 7
Använder du ett annat system? Plesk är en egen kontrollpanel för webbhotell som tillåter användare att administrera sina personliga och/eller klienters webbplatser, databaser
Redmine är ett gratis och öppen källkod, webbaserat projekthanteringsverktyg. Den är skriven i Ruby on Rails och stöder flera databasservrar för lagring av databasen. Det är en funktionsrik applikation som stöder flera projekt, rollbaserad ACL och ett problemspårningssystem. Den har också stöd för Gantt-diagram och kalender, filhantering, wiki och forum per projekt, samt många andra funktioner. Den stöder versionskontrollsystem som Git, SVN eller CVS. Den är också flerspråkig och stöder så många som 49 språk.
För den här handledningen kommer vi att använda 192.168.1.1
som den offentliga IP-adressen och redmine.example.com
som domännamnet pekade mot Vultr-instansen. Se till att ersätta alla förekomster av exemplets domännamn och IP-adress med den faktiska.
Uppdatera ditt bassystem med hjälp av guiden Hur man uppdaterar Ubuntu 16.04 . När ditt system har uppdaterats fortsätter du med att installera beroenden.
Redmine är skrivet i Ruby on Rails, så vi kommer att kräva att Phusion Passenger integreras med Apache-webbservern för att tjäna applikationen.
Installera Apache.
sudo apt -y install apache2 apache2-dev libcurl4-openssl-dev
För att bygga Ruby and Passenger kommer vi att behöva några utvecklingsverktyg också. Installera nödvändiga verktyg.
sudo apt -y install imagemagick libmagickwand-dev git build-essential automake libgmp-dev
Redmine stöder flera typer av databasservrar som MySQL, PostgreSQL och MSSQL. I den här handledningen kommer vi att använda PostgreSQL för att vara värd för Redmines databasserver.
PostgreSQL är ett objektrelationellt databassystem. Standardförvaret i Ubuntu innehåller en gammal version av PostgreSQL, så lägg till PostgreSQL-förvaret i systemet.
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
Installera PostgreSQL-databasservern.
sudo apt -y install postgresql
Starta PostgreSQL-servern och låt den starta automatiskt vid uppstart.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Ändra lösenordet för standardpostgreSQL-användaren.
sudo passwd postgres
Logga in som PostgreSQL-användare.
sudo su - postgres
Skapa en ny PostgreSQL-användare för Redmine.
createuser redmine
Du får använda vilket användarnamn som helst istället för redmine
. PostgreSQL tillhandahåller psql
skalet för att köra frågor på databasen. Byt till PostgreSQL-skalet.
psql
Ställ in ett lösenord för den nyskapade användaren för Redmine-databasen.
ALTER USER redmine WITH ENCRYPTED password 'DBPassword';
Ersätt DBPassword
med ett säkert lösenord. Skapa en ny databas för Redmine-installationen.
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
Gå ut ur psql
skalet.
\q
Växla till sudo
användaren.
exit
Installera ytterligare några nödvändiga PostgreSQL-beroenden.
sudo apt -y install libpqxx-dev protobuf-compiler
Vi kommer att installera den senaste versionen av Ruby med RVM. Den används för att installera och hantera flera versioner av Ruby.
Lägg till RVM-förvaret.
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt update
Installera RVM.
sudo apt -y install rvm
Eftersom vi behöver installera Ruby i hela systemet, kommer vi att byta till root-användaren tillfälligt.
sudo -i
Uppdatera miljövariablerna.
echo "source /etc/profile.d/rvm.sh" | tee -a /etc/profile
source /etc/profile.d/rvm.sh
Installera den senaste versionen av Ruby.
rvm install 2.5.1
Obs: Om du använder en annan version av Ruby, se till att uppdatera Ruby-sökvägen därefter.
Använd den installerade versionen av Ruby.
rvm use 2.5.1 --default
Du kan verifiera dess version.
ruby -v
Du kommer att se en liknande utgång.
root@vultr:~# ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
Installera bundler
, som är beroendehanteraren för Ruby-applikationen.
gem install bundler
Ruby är nu installerad. Innan vi installerar Redmine måste vi installera Phusion Passenger.
Kör följande kommando för att installera Passenger.
gem install passenger
Installera Apache-modulen för passagerare.
passenger-install-apache2-module
Installationsskriptet kommer att ställa några frågor. Först kommer det att ge dig information om installationsprocessen. Sedan kommer den att be dig välja vilket språk du ska använda. Eftersom vår applikation är skriven i Ruby on Rails, välj Ruby från menyn och tryck på för ENTERatt gå vidare.
Which languages are you interested in?
Use <space> to select.
If the menu doesn't display correctly, press '!'
‣ ⬢ Ruby
⬢ Python
⬡ Node.js
⬡ Meteor
Installationsprogrammet kommer nu att söka efter krav. Installationsprogrammet kommer inte att stöta på några saknade beroenden och kommer automatiskt att fortsätta med att kompilera och installera modulen.
När modulen är installerad kommer den att uppmana dig att lägga till modulen i Apache-konfigurationsfilen.
Almost there!
Please edit your Apache configuration file, and add these lines:
LoadModule passenger_module /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
</IfModule>
After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!
Press ENTER when you are done editing.
Vi kommer att hoppa över detta för nu och kommer att slutföra det senare i handledningen. Tryck för ENTERatt hoppa över detta steg.
Slutligen kommer installationsskriptet att validera installationen och du kommer att se en varning som säger att Passenger-modulen inte är specificerad i Apache-konfigurationen.
Validating installation...
* Checking whether this Passenger install is in PATH... ✓
* Checking whether there are no other Passenger installations... ✓
* Checking whether Apache is installed... ✓
* Checking whether the Passenger module is correctly configured in Apache... (!)
You did not specify 'LoadModule passenger_module' in any of your Apache
configuration files. Please paste the configuration snippet that this
installer printed earlier, into one of your Apache configuration files, such
as /etc/apache2/apache2.conf.
Detected 0 error(s), 1 warning(s).
Press ENTER to continue.
Nu när vi har installerat Passengermodulen för Apache, fortsätt att ladda ner och installera Redmine. Byt till sudo
användaren igen eftersom vi inte behöver köra fler kommandon med root
användaren.
exit
Det rekommenderas att använda en oprivilegierad användare för att köra programmet för att hålla det isolerat från resten av systemet. Skapa en ny användare för Redmine och byt till den nyskapade användaren.
sudo adduser --disabled-password --gecos "Redmine User" redmine
sudo su - redmine
Ladda ner den senaste versionen av Redmine från den officiella nedladdningssidan för Redmine .
cd ~
wget http://www.redmine.org/releases/redmine-3.4.4.tar.gz
Extrahera arkivet och byt namn på katalogen för enkelhetens skull.
tar -xf redmine-*.tar.gz
mv redmine-*/ redmine/
Kopiera exempelkonfigurationsfilerna till dess produktionsplats.
cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml
Öppna databaskonfigurationsfilen som vi just kopierade för att ange databasdetaljerna.
nano config/database.yml
Som standard är databasfilen konfigurerad för MySQL. Hitta konfigurationerna för produktion och utveckling och testa vilka som använder MySQL-adaptern. Kommentera alla dessa rader.
#production:
# adapter: mysql2
# database: redmine
# host: localhost
# username: root
# password: ""
# encoding: utf8
#development:
# adapter: mysql2
# database: redmine_development
# host: localhost
# username: root
# password: ""
# encoding: utf8
#test:
# adapter: mysql2
# database: redmine_test
# host: localhost
# username: root
# password: ""
# encoding: utf8
Hitta vidare raderna som kommenteras, med production
konfiguration för postgresql
adaptern. Avkommentera dessa rader och uppdatera databasens namn och användaruppgifter. Se till att använda rätt indrag, som är två mellanslag.
production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: "DBPassword"
Konfigurera applikationen för att använda PostgreSQL-konfigurationen.
bundle config build.pg --with-pg-config=/usr/bin/pg_config
Installera de beroenden som krävs av applikationen.
bundle install --path vendor/bundle --without development test
Du kommer att se följande meddelande i slutet av installationen.
Installing roadie-rails 1.1.1
Bundle complete! 31 Gemfile dependencies, 55 gems now installed.
Gems in the groups development and test were not installed.
Bundled gems are installed into `./vendor/bundle`
Följande kommando genererar hemliga tokens som används för att koda sessionsdata.
bundle exec rake generate_secret_token
Skriv PostgreSQL-databasen.
RAILS_ENV=production bundle exec rake db:migrate
Kör följande kommando, som skriver standarddata till PostgreSQL-databasen.
RAILS_ENV=production bundle exec rake redmine:load_default_data
Kommandot ovan kommer att be dig välja vilket standardspråk som ska användas med applikationen. Standardvalet är engelska; välj enligt dina önskemål.
[redmine@vultr redmine]$ RAILS_ENV=production bundle exec rake redmine:load_default_data
Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, es-PA, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]
====================================
Default configuration data loaded.
Installationen av Redmine-applikationen är nu klar. Ändra ägande och behörigheter för kataloger och filer.
mkdir -p tmp tmp/pdf public/plugin_assets
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets
Vi har konfigurerat allt vi behöver från den icke-privilegierade användaren. Växla tillbaka till sudo
användaren genom att köra su - <username>
.
Lägg till passagerarmodulen för Apache i Apache-konfigurationsfilen. Detta kommer automatiskt att ladda passagerarmodulen.
echo "LoadModule passenger_module /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/buildout/apache2/mod_passenger.so" | sudo tee -a /etc/apache2/apache2.conf
Obs: Sökvägen till Passenger-modulen kan ändras när det finns en ny version av Passenger. För att hitta sökvägen till modulen, använd sudo find / -name mod_passenger.so
kommandot.
Skapa en ny virtuell värdfil för din Redmine-applikation.
sudo nano /etc/apache2/sites-available/redmine.conf
Fyll filen med följande innehåll.
<VirtualHost *:80>
ServerName redmine.example.com
DocumentRoot /home/redmine/redmine/public
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
PassengerUser redmine
<Directory /home/redmine/redmine/public>
Allow from all
Options -MultiViews
Require all granted
</Directory>
</VirtualHost>
Se till att ersätta redmine.example.com
med ditt faktiska domännamn. Se också till att sökvägen till PassengerRoot
och PassengerDefaultRuby
är korrekt. Sökvägen till binärerna kan ändras när det finns en ny version av Ruby eller Passenger. För att hitta dessa sökvägar, kör följande kommando.
passenger-config about ruby-command
Du kommer att få följande utdata.
user@vultr:~$ passenger-config about ruby-command
passenger-config was invoked through the following Ruby interpreter:
Command: /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
Version: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
To use in Apache: PassengerRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
To use in Nginx : passenger_ruby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
To use with Standalone: /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3/bin/passenger start
## Notes for RVM users
Do you want to know which command to use for a different Ruby interpreter? 'rvm use' that Ruby interpreter, then re-run 'passenger-config about ruby-command'.
När den virtuella värdfilen har skapats. Aktivera konfigurationen.
sudo a2ensite redmine
Starta om Apache-webbservern.
sudo systemctl restart apache2
Du kan nu komma åt ditt Redmine-gränssnitt på http://redmine.example.com
. Logga in med användarnamnet admin
och lösenordet admin
. Vid din första inloggning kommer Redmine att uppmana dig att uppdatera lösenordet.
Eftersom vår Redmine-installation är på en offentlig server, rekommenderas det att använda SSL för att säkra utbytet av data från servern.
Lägg till Certbot-förvaret.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Installera Certbot, som är klientapplikationen för Let's Encrypt CA.
sudo apt -y install certbot
Obs: För att få certifikat från Let's Encrypt CA måste domänen för vilken certifikaten ska genereras peka mot servern. Om inte, gör de nödvändiga ändringarna i domänens DNS-poster och vänta tills DNS:n sprider sig innan du gör certifikatbegäran igen. Certbot kontrollerar domänmyndigheten innan certifikaten tillhandahålls.
Generera SSL-certifikaten.
sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com
De genererade certifikaten kommer sannolikt att lagras i /etc/letsencrypt/live/redmine.example.com/
. SSL-certifikatet kommer att lagras som cert.pem
och privat nyckel kommer att lagras som privkey.pem
.
Låt oss kryptera certifikaten går ut om 90 dagar, därför rekommenderas det att ställa in automatisk förnyelse av certifikaten med Cron-jobb.
Öppna Cron-jobbfilen för root
användaren.
sudo crontab -e
Lägg till följande rad i slutet av filen.
30 5 * * * /usr/bin/certbot renew --quiet
Ovanstående Cron-jobb kommer att köras varje dag klockan 5:30. Om certifikatet löper ut kommer det automatiskt att förnyas.
Aktivera SSL-modulen för Apache.
sudo a2enmod ssl
Redigera den virtuella värdfilen vi skapade tidigare för Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Ändra den virtuella värdfilen så att den liknar följande.
<VirtualHost *:80>
ServerName redmine.example.com
Redirect permanent / https://redmine.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName redmine.example.com
DocumentRoot "/home/redmine/redmine/public"
<Directory "/home/redmine/redmine/public">
Options None
Require all granted
</Directory>
PassengerAppEnv production
PassengerRoot /usr/share/rvm/gems/ruby-2.5.1/gems/passenger-5.2.3
PassengerDefaultRuby /usr/share/rvm/gems/ruby-2.5.1/wrappers/ruby
PassengerUser redmine
PassengerHighPerformance on
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/redmine.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/redmine.example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/redmine.example.com/chain.pem
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
<IfModule headers_module>
Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains"
</IfModule>
</VirtualHost>
Spara filen och avsluta redigeraren.
Starta om Apache så att ändringarna kan träda i kraft.
sudo systemctl restart apache2
Du kan nu komma åt Redmine över HTTPS
på https://redmine.example.com
.
Grattis, du har framgångsrikt installerat Redmine på din Ubuntu 16.04-instans. Börja utveckla ditt projekt antingen genom att skapa eller importera ditt projekt.
Använder du ett annat system? Plesk är en egen kontrollpanel för webbhotell som tillåter användare att administrera sina personliga och/eller klienters webbplatser, databaser
Introduktion Cacti är ett övervaknings- och grafverktyg med öppen källkod som är helt baserat på RRD-data. Genom Cacti kan du övervaka nästan vilken typ av enhet som helst
Introduktion Lets Encrypt är en certifikatmyndighetstjänst som erbjuder gratis TLS/SSL-certifikat. Installationsprocessen förenklas av Certbot,
Använder du ett annat system? Vad är Tekkit Classic? Tekkit Classic är ett modpack för spelet som alla känner och älskar; Minecraft. Den innehåller några av ver
Använder du ett annat system? Den här handledningen visar dig hur du installerar groupware iRedMail på en ny installation av Debian Wheezy. Du bör använda en serve
PHP och relaterade paket är de mest använda komponenterna när du distribuerar en webbserver. I den här artikeln kommer vi att lära oss hur du ställer in PHP 7.0 eller PHP 7.1 o
Squid är ett populärt, gratis Linux-program som låter dig skapa en webbproxy för vidarebefordran. I den här guiden ser du hur du installerar Squid på CentOS för att förvandla dig
Inledning Lighttpd är en apachegaffel som syftar till att vara mycket mindre resurskrävande. Den är lätt, därav namnet, och är ganska enkel att använda. Installera
1. Virtualmin/Webmin Virtualmin är en kraftfull och flexibel kontrollpanel för webbhotell för Linux- och UNIX-system baserad på den välkända Open Source-webbasen
Yii är ett PHP-ramverk som låter dig utveckla applikationer snabbare och enklare. Att installera Yii på Ubuntu är enkelt, eftersom du kommer att lära dig exakt
Screen är ett program som tillåter flera terminalsessioner inom ett fönster. Detta låter dig simulera flera terminalfönster där det ma
Denna handledning förklarar hur man ställer in en DNS-server med Bind9 på Debian eller Ubuntu. Genomgående i artikeln, byt ut ditt-domännamn.com i enlighet med detta. Vid th
Inledning Logrotate är ett Linux-verktyg som förenklar administrationen av loggfiler. Den körs vanligtvis en gång om dagen via ett cron-jobb och hanterar loggbasen
VULTR har nyligen gjort ändringar på deras sida, och allt borde nu fungera bra direkt när NetworkManager är aktiverat. Om du vill inaktivera
Icinga2 är ett kraftfullt övervakningssystem, och när det används i en master-klient-modell kan det ersätta behovet av NRPE-baserade övervakningskontroller. Master-klienten
Använder du ett annat system? Red5 är en mediaserver med öppen källkod implementerad i Java som låter dig köra Flash fleranvändarapplikationer som livestreamin
I den här artikeln kommer vi att se hur man kompilerar och installerar Nginx mainline från de officiella källorna för Nginx med PageSpeed-modulen, som låter dig t
Använder du ett annat system? Apache Cassandra är ett gratis NoSQL-databashanteringssystem med öppen källkod som är designat för att ge skalbarhet, hög
Använder du ett annat system? Apache Cassandra är ett gratis NoSQL-databashanteringssystem med öppen källkod som är designat för att ge skalbarhet, hög
Använder du ett annat system? Vanilla forum är en open source forumapplikation skriven i PHP. Det är en helt anpassningsbar, enkel att använda och stöder externa
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.
Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.
Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.
Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...
När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.
Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.
Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.
I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.
Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer