Nainstalujte Plesk na CentOS 7
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
Redmine je bezplatný a open source webový nástroj pro správu projektů. Je napsán v Ruby on Rails a podporuje více databázových serverů pro ukládání databáze. Jedná se o funkčně bohatou aplikaci podporující více projektů, ACL založené na rolích a systém sledování problémů. Má také podporu Ganttova diagramu a kalendáře, správu souborů, wiki projektu a fórum a mnoho dalších funkcí. Podporuje systémy správy verzí, jako je Git, SVN nebo CVS. Je také vícejazyčný a podporuje až 49 jazyků.
Pro tento tutoriál použijeme 192.168.1.1
jako veřejnou IP adresu a redmine.example.com
jako název domény směřující k instanci Vultr. Ujistěte se, že jste nahradili všechny výskyty vzorového názvu domény a IP adresy skutečnými.
Aktualizujte svůj základní systém pomocí průvodce Jak aktualizovat Ubuntu 16.04 . Jakmile bude váš systém aktualizován, pokračujte v instalaci závislostí.
Redmine je napsán v Ruby on Rails, takže pro obsluhu aplikace budeme vyžadovat, aby se Phusion Passenger integroval s webovým serverem Apache.
Nainstalujte Apache.
sudo apt -y install apache2 apache2-dev libcurl4-openssl-dev
K sestavení Ruby a Passenger budeme potřebovat také nějaké vývojové nástroje. Nainstalujte požadované nástroje.
sudo apt -y install imagemagick libmagickwand-dev git build-essential automake libgmp-dev
Redmine podporuje několik typů databázových serverů, jako jsou MySQL, PostgreSQL a MSSQL. V tomto tutoriálu použijeme PostgreSQL k hostování databázového serveru Redmine.
PostgreSQL je objektově relační databázový systém. Výchozí úložiště Ubuntu obsahuje starou verzi PostgreSQL, takže do systému přidejte úložiště PostgreSQL.
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
Nainstalujte databázový server PostgreSQL.
sudo apt -y install postgresql
Spusťte PostgreSQL server a povolte jeho automatické spouštění při bootování.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Změňte heslo pro výchozího uživatele PostgreSQL.
sudo passwd postgres
Přihlaste se jako uživatel PostgreSQL.
sudo su - postgres
Vytvořte nového uživatele PostgreSQL pro Redmine.
createuser redmine
Můžete použít libovolné uživatelské jméno místo redmine
. PostgreSQL poskytuje psql
prostředí pro spouštění dotazů na databázi. Přepněte do prostředí PostgreSQL.
psql
Nastavte heslo pro nově vytvořeného uživatele pro databázi Redmine.
ALTER USER redmine WITH ENCRYPTED password 'DBPassword';
Nahraďte jej DBPassword
bezpečným heslem. Vytvořte novou databázi pro instalaci Redmine.
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
Vyjděte ze psql
skořápky.
\q
Přepnout na sudo
uživatele.
exit
Nainstalujte několik dalších požadovaných závislostí PostgreSQL.
sudo apt -y install libpqxx-dev protobuf-compiler
Nainstalujeme nejnovější verzi Ruby pomocí RVM. Používá se k instalaci a správě více verzí Ruby.
Přidejte úložiště RVM.
sudo apt-add-repository -y ppa:rael-gc/rvm
sudo apt update
Nainstalujte RVM.
sudo apt -y install rvm
Protože potřebujeme nainstalovat Ruby celý systém, přepneme dočasně na uživatele root.
sudo -i
Aktualizujte proměnné prostředí.
echo "source /etc/profile.d/rvm.sh" | tee -a /etc/profile
source /etc/profile.d/rvm.sh
Nainstalujte nejnovější verzi Ruby.
rvm install 2.5.1
Poznámka: Pokud používáte jinou verzi Ruby, nezapomeňte odpovídajícím způsobem aktualizovat cestu Ruby.
Použijte nainstalovanou verzi Ruby.
rvm use 2.5.1 --default
Jeho verzi si můžete ověřit.
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
, což je správce závislostí pro aplikaci Ruby.
gem install bundler
Ruby je nyní nainstalován. Než nainstalujeme Redmine, budeme muset nainstalovat Phusion Passenger.
Spuštěním následujícího příkazu nainstalujte Passenger.
gem install passenger
Nainstalujte modul Apache pro cestující.
passenger-install-apache2-module
Instalační skript vám položí několik otázek. Nejprve vám poskytne informace o procesu instalace. Poté vás požádá o výběr jazyka, který budete používat. Protože je naše aplikace napsána v Ruby on Rails, vyberte z nabídky Ruby a stiskněte ENTERpro pokračování.
Which languages are you interested in?
Use <space> to select.
If the menu doesn't display correctly, press '!'
‣ ⬢ Ruby
⬢ Python
⬡ Node.js
⬡ Meteor
Instalační program nyní zkontroluje požadavky. Instalační program nenarazí na žádné chybějící závislosti a automaticky pokračuje v kompilaci a instalaci modulu.
Jakmile je modul nainstalován, zobrazí se výzva k přidání modulu do konfiguračního souboru 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.
Toto prozatím vynecháme a dokončíme to později v tutoriálu. Stiskněte ENTERpro přeskočení tohoto kroku.
Nakonec instalační skript ověří instalaci a zobrazí se varování, že modul Passenger není specifikován v konfiguraci Apache.
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.
Nyní, když jsme nainstalovali modul Passenger pro Apache, pokračujte ke stažení a instalaci Redmine. Přepněte znovu na sudo
uživatele, protože již nepotřebujeme spouštět žádné další příkazy pomocí root
uživatele.
exit
Ke spuštění aplikace se doporučuje použít neprivilegovaného uživatele, aby byla izolována od zbytku systému. Vytvořte nového uživatele pro Redmine a přepněte na nově vytvořeného uživatele.
sudo adduser --disabled-password --gecos "Redmine User" redmine
sudo su - redmine
Stáhněte si nejnovější verzi Redmine z oficiální stránky pro stahování Redmine .
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
Poznámka: Cesta k modulu Passenger se může změnit, když bude k dispozici nové vydání Passenger. Chcete-li najít cestu k modulu, použijte sudo find / -name mod_passenger.so
příkaz.
Vytvořte nový soubor virtuálního hostitele pro vaši aplikaci Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Naplňte soubor následujícím obsahem.
<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>
Nezapomeňte nahradit redmine.example.com
skutečným názvem domény. Také se ujistěte, že cesta k PassengerRoot
a PassengerDefaultRuby
je správná. Cesta k binárním souborům se může změnit, když bude nové vydání Ruby nebo Passenger. Chcete-li najít tyto cesty, spusťte následující příkaz.
passenger-config about ruby-command
Získáte následující výstup.
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'.
Jakmile je vytvořen soubor virtuálního hostitele. Aktivujte konfiguraci.
sudo a2ensite redmine
Restartujte webový server Apache.
sudo systemctl restart apache2
Nyní můžete přistupovat ke svému rozhraní Redmine na http://redmine.example.com
. Přihlaste se pomocí uživatelského jména admin
a hesla admin
. Při prvním přihlášení vás Redmine vyzve k aktualizaci hesla.
Vzhledem k tomu, že naše instalace Redmine je na veřejném serveru, doporučujeme použít SSL pro zabezpečení výměny dat ze serveru.
Přidejte úložiště Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Nainstalujte Certbot, což je klientská aplikace pro Let's Encrypt CA.
sudo apt -y install certbot
Poznámka: Chcete-li získat certifikáty od Let's Encrypt CA, doména, pro kterou mají být certifikáty generovány, musí být nasměrována na server. Pokud ne, proveďte potřebné změny v záznamech DNS domény a počkejte, až se DNS rozšíří, než znovu požádáte o certifikát. Certbot před poskytnutím certifikátů zkontroluje autoritu domény.
Vygenerujte certifikáty SSL.
sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com
Vygenerované certifikáty budou pravděpodobně uloženy ve formátu /etc/letsencrypt/live/redmine.example.com/
. SSL certifikát bude uložen jako cert.pem
a soukromý klíč bude uložen jako privkey.pem
.
Platnost certifikátů Let's Encrypt vyprší za 90 dní, proto se doporučuje nastavit automatické obnovování certifikátů pomocí úloh Cron.
Otevřete soubor úlohy Cron pro root
uživatele.
sudo crontab -e
Přidejte následující řádek na konec souboru.
30 5 * * * /usr/bin/certbot renew --quiet
Výše uvedená úloha Cron bude probíhat každý den v 5:30. Pokud má platnost certifikátu vypršet, bude automaticky obnoven.
Povolte modul SSL pro Apache.
sudo a2enmod ssl
Upravte soubor virtuálního hostitele, který jsme dříve vytvořili pro Redmine.
sudo nano /etc/apache2/sites-available/redmine.conf
Upravte soubor virtuálního hostitele tak, aby byl podobný následujícímu.
<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 soubor a ukončete editor.
Restartujte Apache, aby se změny projevily.
sudo systemctl restart apache2
Nyní máte přístup k Redmine na HTTPS
adrese https://redmine.example.com
.
Gratulujeme, úspěšně jste nainstalovali Redmine do vaší instance Ubuntu 16.04. Začněte vyvíjet svůj projekt vytvořením nebo importem projektu.
Používáte jiný systém? Plesk je proprietární ovládací panel webového hostitele, který umožňuje uživatelům spravovat jejich osobní a/nebo klientské webové stránky, databáze
Úvod Lets Encrypt je služba certifikační autority, která nabízí bezplatné certifikáty TLS/SSL. Proces instalace zjednodušil Certbot,
Používáte jiný systém? Co je Tekkit Classic? Tekkit Classic je modpack pro hru, kterou každý zná a miluje; Minecraft. Obsahuje některé z ver
Používáte jiný systém? Jekyll je skvělá alternativa k WordPressu pro blogování nebo sdílení obsahu. Nevyžaduje žádné databáze a je velmi snadné i
Používáte jiný systém? Pokud si zakoupíte server Debian, měli byste mít vždy nejnovější bezpečnostní záplaty a aktualizace, ať už spíte nebo ne
PHP a související balíčky jsou nejčastěji používané komponenty při nasazování webového serveru. V tomto článku se naučíme, jak nastavit PHP 7.0 nebo PHP 7.1 o
Squid je populární bezplatný linuxový program, který vám umožňuje vytvořit webový proxy pro předávání. V této příručce uvidíte, jak nainstalovat Squid na CentOS, aby vás otočil
Úvod Lighttpd je fork Apache, jehož cílem je být mnohem méně náročný na zdroje. Je lehký, odtud jeho název, a jeho použití je docela jednoduché. Installin
Yii je PHP framework, který vám umožňuje vyvíjet aplikace rychleji a snadněji. Instalace Yii na Ubuntu je přímočará, jak se přesně dozvíte
Screen je aplikace, která umožňuje vícenásobné použití terminálových relací v rámci jednoho okna. To vám umožňuje simulovat více oken terminálu, kde to má
Tento tutoriál vysvětluje, jak nastavit DNS server pomocí Bind9 na Debianu nebo Ubuntu. V celém článku nahraďte odpovídajícím způsobem název-vaše-domény.com. Při čt
VULTR nedávno provedl změny na jejich konci a vše by nyní mělo fungovat dobře po vybalení s povoleným NetworkManagerem. Pokud si přejete deaktivovat
Icinga2 je výkonný monitorovací systém a při použití v modelu master-client může nahradit potřebu monitorovacích kontrol založených na NRPE. Hlavní klient
Používáte jiný systém? Red5 je open source mediální server implementovaný v Javě, který vám umožňuje spouštět aplikace Flash pro více uživatelů, jako je živé streamování
V tomto článku uvidíme, jak zkompilovat a nainstalovat hlavní řadu Nginx z oficiálních zdrojů Nginx pomocí modulu PageSpeed, který vám umožňuje
Používáte jiný systém? Apache Cassandra je bezplatný a otevřený systém pro správu databází NoSQL, který je navržen tak, aby poskytoval škálovatelnost, vysokou
Používáte jiný systém? Apache Cassandra je bezplatný a otevřený systém pro správu databází NoSQL, který je navržen tak, aby poskytoval škálovatelnost, vysokou
Používáte jiný systém? Vanilla forum je open source aplikace fóra napsaná v PHP. Je plně přizpůsobitelný, snadno použitelný a podporuje externí
Používáte jiný systém? Úvod Kanboard je bezplatný a otevřený softwarový program pro správu projektů, který je navržen tak, aby usnadnil a vizualizoval
Používáte jiný systém? Úvod Kanboard je bezplatný a otevřený softwarový program pro správu projektů, který je navržen tak, aby usnadnil a vizualizoval
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.
Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.
Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.
Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…
Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.
Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.
Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.
V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.
Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více