Install Plesk on CentOS 7
Using a Different System? Plesk is a proprietary web host control panel that allows users to administer their personal and/or clients websites, databases
Redmine je bezplatný a otvorený zdrojový webový nástroj na správu projektov. Je napísaný v Ruby on Rails a podporuje viacero databázových serverov na ukladanie databázy. Ide o funkčne bohatú aplikáciu podporujúcu viaceré projekty, rolové ACL a systém sledovania problémov. Má tiež podporu Ganttovho diagramu a kalendára, správu súborov, wiki projektu a fórum, ako aj mnoho ďalších funkcií. Podporuje systémy na správu verzií ako Git, SVN alebo CVS. Je tiež viacjazyčný a podporuje až 49 jazykov.
V tomto návode budeme používať 192.168.1.1
ako verejnú IP adresu a redmine.example.com
ako názov domény smerujúci k inštancii Vultr. Uistite sa, že ste nahradili všetky výskyty vzorového názvu domény a adresy IP skutočnými.
Aktualizujte svoj základný systém pomocou príručky Ako aktualizovať Ubuntu 16.04 . Po aktualizácii systému pokračujte v inštalácii závislostí.
Redmine je napísaný v jazyku Ruby on Rails, takže budeme vyžadovať, aby sa Phusion Passenger integroval s webovým serverom Apache, aby mohol slúžiť aplikácii.
Nainštalujte Apache.
sudo apt -y install apache2 apache2-dev libcurl4-openssl-dev
Na zostavenie Ruby a Passenger budeme potrebovať aj nejaké vývojové nástroje. Nainštalujte požadované nástroje.
sudo apt -y install imagemagick libmagickwand-dev git build-essential automake libgmp-dev
Redmine podporuje viacero typov databázových serverov, ako sú MySQL, PostgreSQL a MSSQL. V tomto návode použijeme PostgreSQL na hosťovanie databázového servera Redmine.
PostgreSQL je objektovo-relačný databázový systém. Predvolené úložisko Ubuntu obsahuje starú verziu PostgreSQL, preto pridajte úložisko PostgreSQL do systému.
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
Nainštalujte databázový server PostgreSQL.
sudo apt -y install postgresql
Spustite server PostgreSQL a povoľte jeho automatické spustenie pri štarte.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Zmeňte heslo pre predvoleného používateľa PostgreSQL.
sudo passwd postgres
Prihláste sa ako používateľ PostgreSQL.
sudo su - postgres
Vytvorte nového používateľa PostgreSQL pre Redmine.
createuser redmine
Namiesto mena môžete použiť ľubovoľné používateľské meno redmine
. PostgreSQL poskytuje psql
shell na spúšťanie dotazov v databáze. Prepnite sa do prostredia PostgreSQL.
psql
Nastavte heslo pre novovytvoreného používateľa pre databázu Redmine.
ALTER USER redmine WITH ENCRYPTED password 'DBPassword';
Nahraďte DBPassword
ho bezpečným heslom. Vytvorte novú databázu pre inštaláciu Redmine.
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
Vyjdite z psql
ulity.
\q
Prepnúť na sudo
používateľa.
exit
Nainštalujte niekoľko ďalších požadovaných závislostí PostgreSQL.
sudo apt -y install libpqxx-dev protobuf-compiler
Najnovšiu verziu Ruby nainštalujeme pomocou RVM. Používa sa na inštaláciu a správu viacerých verzií Ruby.
Pridajte úložisko RVM.
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt update
Nainštalujte RVM.
sudo apt -y install rvm
Keďže potrebujeme nainštalovať Ruby celý systém, dočasne prepneme na používateľa root.
sudo -i
Aktualizujte premenné prostredia.
echo "source /etc/profile.d/rvm.sh" | tee -a /etc/profile
source /etc/profile.d/rvm.sh
Nainštalujte najnovšiu verziu Ruby.
rvm install 2.5.1
Poznámka: Ak používate inú verziu Ruby, nezabudnite zodpovedajúcim spôsobom aktualizovať cestu Ruby.
Použite nainštalovanú verziu Ruby.
rvm use 2.5.1 --default
Jeho verziu si môžete overiť.
ruby -v
Uvidíte podobný výstup.
root@vultr:~# ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
Install bundler
, čo je správca závislostí pre aplikáciu Ruby.
gem install bundler
Ruby je teraz nainštalovaný. Pred inštaláciou Redmine budeme musieť nainštalovať Phusion Passenger.
Spustite nasledujúci príkaz a nainštalujte Passenger.
gem install passenger
Nainštalujte modul Apache pre cestujúcich.
passenger-install-apache2-module
Inštalačný skript vám položí niekoľko otázok. Najprv vám poskytne informácie o procese inštalácie. Potom vás požiada o výber jazyka, ktorý budete používať. Keďže je naša aplikácia napísaná v jazyku Ruby on Rails, vyberte položku Ruby z ponuky a stlačením ENTERpokračujte ďalej.
Which languages are you interested in?
Use <space> to select.
If the menu doesn't display correctly, press '!'
‣ ⬢ Ruby
⬢ Python
⬡ Node.js
⬡ Meteor
Inštalátor teraz skontroluje požiadavky. Inštalátor nenarazí na žiadne chýbajúce závislosti a automaticky pokračuje v kompilácii a inštalácii modulu.
Po nainštalovaní modulu sa zobrazí výzva na pridanie modulu do konfiguračného súboru Apache.
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.
We will skip this for now and will complete it later in the tutorial. Press ENTER to skip this step.
Finally, the installer script will validate the installation and you will see a warning saying the Passenger module is not specified in Apache configuration.
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.
Now that we have installed the Passenger module for Apache, proceed to download and install Redmine. Switch to the sudo
user again since we do not need to run any more commands using root
user.
exit
It is recommended to use an unprivileged user to run the application to keep it isolated from rest of the system. Create a new user for Redmine and switch to the newly created user.
sudo adduser --disabled-password --gecos "Redmine User" redmine
sudo su - redmine
Download the latest version of Redmine from the official Redmine download page.
cd ~
wget http://www.redmine.org/releases/redmine-3.4.4.tar.gz
Extract the archive and rename the directory for the sake of convenience.
tar -xf redmine-*.tar.gz
mv redmine-*/ redmine/
Copy the example configuration files to its production location.
cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml
Open the database configuration file we just copied to enter the database details.
nano config/database.yml
By default, the database file is configured for MySQL. Find the configurations for production and development, and test which uses the MySQL adapter. Comment out all of these lines.
#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
Furthur, find the lines which are commented, having production
configuration for the postgresql
adapter. Uncomment those lines and update the database name and user credentials. Make sure to use the correct indentation, which is two spaces.
production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: "DBPassword"
Configure the application to use the PostgreSQL configuration.
bundle config build.pg --with-pg-config=/usr/bin/pg_config
Install the dependencies required by the application.
bundle install --path vendor/bundle --without development test
You will see the following message at the end of the installation.
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`
The following command generates secret tokens that are used to encode the session data.
bundle exec rake generate_secret_token
Write the PostgreSQL database.
RAILS_ENV=production bundle exec rake db:migrate
Run the following command, which writes the default data into PostgreSQL database.
RAILS_ENV=production bundle exec rake redmine:load_default_data
The above command will ask you to choose the default language to be used with the application. The default choice is English; choose according to your preference.
[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.
Installation of the Redmine application is now finished. Change ownership and permissions of the directories and files.
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
We have configured everything we need from the non-privileged user. Switch back to the sudo
user by running su - <username>
.
Add the Passenger module for Apache into the Apache configuration file. This will automatically load the Passenger module.
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
Note: The path to the Passenger module may change when there is a new release of Passenger. To find the path to the module, use the sudo find / -name mod_passenger.so
command.
Create a new virtual host file for your Redmine application.
sudo nano /etc/apache2/sites-available/redmine.conf
Populate the file with the following content.
<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>
Make sure to replace redmine.example.com
with your actual domain name. Also, make sure that the path to the PassengerRoot
and PassengerDefaultRuby
are correct. The path to the binaries may change when there is a new release of Ruby or Passenger. To find these paths, run the following command.
passenger-config about ruby-command
You will get following output.
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'.
Once the Virtual host file is created. Activate the configuration.
sudo a2ensite redmine
Restart the Apache web server.
sudo systemctl restart apache2
You can now access your Redmine interface on http://redmine.example.com
. Login with the username admin
, and the password admin
. On your first login, Redmine will prompt you to update the password.
Since our Redmine installation is on a public facing server, it is recommended to use SSL to secure the exchange of the data from the server.
Add the Certbot repository.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Install Certbot, which is the client application for Let's Encrypt CA.
sudo apt -y install certbot
Poznámka: Ak chcete získať certifikáty od Let's Encrypt CA, doména, pre ktorú sa majú certifikáty vygenerovať, musí byť nasmerovaná na server. Ak nie, vykonajte potrebné zmeny v záznamoch DNS domény a počkajte, kým sa DNS rozšíri, a až potom znova požiadajte o certifikát. Certbot pred poskytnutím certifikátov skontroluje autoritu domény.
Vygenerujte certifikáty SSL.
sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com
Vygenerované certifikáty budú pravdepodobne uložené v /etc/letsencrypt/live/redmine.example.com/
. Certifikát SSL bude uložený ako cert.pem
a súkromný kľúč bude uložený ako privkey.pem
.
Platnosť certifikátov Let's Encrypt vyprší o 90 dní, preto sa odporúča nastaviť automatické obnovovanie certifikátov pomocou úloh Cron.
Otvorte súbor úlohy Cron pre root
používateľa.
sudo crontab -e
Na koniec súboru pridajte nasledujúci riadok.
30 5 * * * /usr/bin/certbot renew --quiet
Vyššie uvedená úloha Cron sa spustí každý deň o 5:30. Ak platnosť certifikátu vyprší, automaticky sa obnoví.
Povoľte modul SSL pre Apache.
sudo a2enmod ssl
Upravte súbor virtuálneho hostiteľa, ktorý sme predtým vytvorili pre Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Upravte súbor virtuálneho hostiteľa tak, aby bol podobný nasledujúcemu.
<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>
Uložte súbor a ukončite editor.
Reštartujte Apache, aby sa zmeny prejavili.
sudo systemctl restart apache2
Teraz máte prístup k Redmine na HTTPS
adrese https://redmine.example.com
.
Gratulujeme, úspešne ste nainštalovali Redmine na svoju inštanciu Ubuntu 16.04. Začnite rozvíjať svoj projekt vytvorením alebo importovaním projektu.
Using a Different System? Plesk is a proprietary web host control panel that allows users to administer their personal and/or clients websites, databases
Introduction Lets Encrypt is a certificate authority service that offers free TLS/SSL certificates. The process of installation is simplified by Certbot,
Používate iný systém? Čo je Tekkit Classic? Tekkit Classic je modpack pre hru, ktorú každý pozná a miluje; Minecraft. Obsahuje niektoré z ver
Using a Different System? Jekyll is a great alternative to WordPress for blogging or sharing content. It doesnt require any databases and it is very easy i
Používate iný systém? Ak si zakúpite server Debian, mali by ste mať vždy najnovšie bezpečnostné záplaty a aktualizácie, či už spíte alebo nie
PHP a súvisiace balíky sú najčastejšie používané komponenty pri nasadzovaní webového servera. V tomto článku sa naučíme, ako nastaviť PHP 7.0 alebo PHP 7.1 o
Squid je populárny bezplatný linuxový program, ktorý vám umožňuje vytvoriť webový proxy server na presmerovanie. V tejto príručke uvidíte, ako nainštalovať Squid na CentOS, aby vás zmenil
Úvod Lighttpd je fork Apache, ktorého cieľom je byť oveľa menej náročný na zdroje. Je ľahký, odtiaľ jeho názov, a jeho použitie je celkom jednoduché. Installin
1. Virtualmin/Webmin Virtualmin je výkonný a flexibilný ovládací panel webhostingu pre systémy Linux a UNIX založený na známej webovej základni Open Source
Yii je rámec PHP, ktorý vám umožňuje rýchlejšie a jednoduchšie vyvíjať aplikácie. Inštalácia Yii na Ubuntu je jednoduchá, ako sa presne dozviete
Screen je aplikácia, ktorá umožňuje viacnásobné použitie terminálových relácií v rámci jedného okna. To vám umožňuje simulovať viacero okien terminálu, kde je to možné
Tento tutoriál vysvetľuje, ako nastaviť server DNS pomocou Bind9 na Debiane alebo Ubuntu. V celom článku podľa toho nahraďte názov vašej-domény.com. Pri th
Úvod Logrotate je nástroj pre Linux, ktorý zjednodušuje správu protokolových súborov. Zvyčajne beží raz denne prostredníctvom úlohy cron a spravuje základňu protokolov
VULTR nedávno vykonal zmeny na ich konci a všetko by teraz malo fungovať dobre po vybalení so zapnutým NetworkManagerom. Ak chcete deaktivovať
Icinga2 je výkonný monitorovací systém a pri použití v modeli master-client môže nahradiť potrebu monitorovacích kontrol založených na NRPE. Hlavný klient
Používate iný systém? Red5 je mediálny server s otvoreným zdrojom implementovaný v jazyku Java, ktorý vám umožňuje spúšťať aplikácie Flash pre viacerých používateľov, ako napríklad živé vysielanie
Používate iný systém? Apache Cassandra je bezplatný a otvorený systém správy databáz NoSQL, ktorý je navrhnutý tak, aby poskytoval škálovateľnosť, vysokú
Používate iný systém? Vanilla forum je open source aplikácia fóra napísaná v PHP. Je plne prispôsobiteľný, ľahko použiteľný a podporuje externé
Používate iný systém? Úvod Kanboard je bezplatný a otvorený softvérový program na riadenie projektov, ktorý je navrhnutý tak, aby uľahčil a vizualizoval
Používate iný systém? Úvod Kanboard je bezplatný a otvorený softvérový program na riadenie projektov, ktorý je navrhnutý tak, aby uľahčil a vizualizoval
Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.
Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.
Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.
Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.
Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…
Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.
Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.
Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.
V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.
Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac