Πώς να εγκαταστήσετε το Redmine στο CentOS 7

Το Redmine είναι ένα δωρεάν και ανοιχτού κώδικα εργαλείο διαχείρισης έργων που βασίζεται στο web. Είναι γραμμένο σε Ruby on Rails και υποστηρίζει πολλούς διακομιστές βάσης δεδομένων για την αποθήκευση της βάσης δεδομένων. Είναι μια πλούσια σε χαρακτηριστικά εφαρμογή που υποστηρίζει πολλαπλά έργα, ACL που βασίζεται σε ρόλους και σύστημα παρακολούθησης προβλημάτων. Διαθέτει επίσης υποστήριξη γραφήματος και ημερολογίου Gantt, διαχείριση αρχείων, wiki και φόρουμ ανά έργο, καθώς και πολλές άλλες δυνατότητες. Υποστηρίζει συστήματα ελέγχου έκδοσης όπως Git, SVN ή CVS. Είναι επίσης πολύγλωσσο, υποστηρίζοντας έως και 49 γλώσσες.

Αυτός ο οδηγός γράφτηκε για το Redmine 3.4.4, αλλά μπορεί να ισχύει και για νεότερες εκδόσεις.

Προαπαιτούμενα

  • Μια παρουσία διακομιστή Vultr CentOS 7.
  • Ένας χρήστης sudo .
  • Ένα όνομα τομέα στραμμένο προς τον διακομιστή.

Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε 192.168.1.1ως δημόσια διεύθυνση IP και redmine.example.comως όνομα τομέα που δείχνει προς την παρουσία του Vultr. Βεβαιωθείτε ότι έχετε αντικαταστήσει όλες τις εμφανίσεις του παραδείγματος ονόματος τομέα και διεύθυνσης IP με την πραγματική.

Ενημερώστε το βασικό σας σύστημα χρησιμοποιώντας τον οδηγό Πώς να ενημερώσετε το CentOS 7 . Αφού ενημερωθεί το σύστημά σας, προχωρήστε στην εγκατάσταση των εξαρτήσεων.

Εγκαταστήστε το Apache

Το Redmine είναι γραμμένο σε Ruby on Rails, επομένως θα απαιτήσουμε από το Phusion Passenger να ενσωματωθεί στον διακομιστή ιστού Apache για να εξυπηρετήσει την εφαρμογή. Εγκαταστήστε το Apache.

sudo yum -y install httpd httpd-devel libcurl-devel

Για να δημιουργήσουμε την εφαρμογή Redmine, θα χρειαστούμε και κάποια εργαλεία ανάπτυξης. Εγκαταστήστε τα απαιτούμενα εργαλεία.

sudo yum -y install ImageMagick ImageMagick-devel git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel

Εγκαταστήστε το PostgreSQL

Το Redmine υποστηρίζει πολλούς τύπους διακομιστών βάσεων δεδομένων, όπως MySQL, PostgreSQL και MSSQL. Σε αυτό το σεμινάριο, θα χρησιμοποιήσουμε την PostgreSQL για να φιλοξενήσουμε τον διακομιστή βάσης δεδομένων Redmine.

Το PostgreSQL είναι ένα αντικειμενοσχεσιακό σύστημα βάσης δεδομένων. Το προεπιλεγμένο yumαποθετήριο περιέχει μια παλιά έκδοση της PostgreSQL, επομένως προσθέστε το αποθετήριο PostgreSQL στο σύστημα.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm

Εγκαταστήστε τον διακομιστή βάσης δεδομένων PostgreSQL.

sudo yum -y install postgresql10-server postgresql10-contrib postgresql10 

Αρχικοποιήστε τη βάση δεδομένων.

sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

Ξεκινήστε τον διακομιστή PostgreSQL και ενεργοποιήστε τον να ξεκινά αυτόματα κατά την εκκίνηση.

sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

Αλλάξτε τον κωδικό πρόσβασης για τον προεπιλεγμένο χρήστη PostgreSQL.

sudo passwd postgres

Συνδεθείτε ως χρήστης PostgreSQL.

sudo su - postgres

Δημιουργήστε έναν νέο χρήστη PostgreSQL για το Redmine.

createuser redmine

Επιτρέπεται να χρησιμοποιείτε οποιοδήποτε όνομα χρήστη αντί για redmine. Η PostgreSQL παρέχει το psqlκέλυφος για την εκτέλεση ερωτημάτων στη βάση δεδομένων. Μεταβείτε στο κέλυφος PostgreSQL.

psql

Ορίστε έναν κωδικό πρόσβασης για τον χρήστη που δημιουργήθηκε πρόσφατα για τη βάση δεδομένων Redmine.

ALTER USER redmine WITH ENCRYPTED password 'DBPassword';

Αντικαταστήστε DBPasswordμε έναν ασφαλή κωδικό πρόσβασης. Δημιουργήστε μια νέα βάση δεδομένων για την εγκατάσταση του Redmine.

CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;

Έξοδος από το psqlκέλυφος.

\q

Εναλλαγή στο sudoχρήστη.

exit

Επεξεργαστείτε το pg_hba.confαρχείο για να ενεργοποιήσετε τον έλεγχο ταυτότητας βάσει MD5.

sudo nano /var/lib/pgsql/10/data/pg_hba.conf

Βρείτε τις ακόλουθες γραμμές και αλλάξτε τις τιμές peerκαι identστη METHODστήλη σε trustκαι md5, αντίστοιχα.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Μόλις ενημερωθεί, η διαμόρφωση θα πρέπει να μοιάζει με αυτό.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Κάντε επανεκκίνηση της PostgreSQL για να τεθούν σε ισχύ οι αλλαγές.

sudo systemctl restart postgresql-10

Εγκαταστήστε μερικές ακόμη απαιτούμενες εξαρτήσεις PostgreSQL.

sudo yum -y install libpqxx-devel protobuf-devel

Εγκαταστήστε το Ruby

Συνιστάται η χρήση ενός μη προνομιούχου χρήστη για την εκτέλεση της εφαρμογής για να παραμείνει απομονωμένη από το υπόλοιπο σύστημα. Δημιουργήστε έναν νέο χρήστη για το Redmine και μεταβείτε στον νέο χρήστη.

sudo adduser redmine
sudo su - redmine

Θα εγκαταστήσουμε την πιο πρόσφατη έκδοση του Ruby χρησιμοποιώντας Ruby Version Manager ή RVM. Χρησιμοποιείται για την εγκατάσταση και τη διαχείριση πολλαπλών εκδόσεων του Ruby.

Προσθέστε το κλειδί GPG του RVM στον διακομιστή σας.

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Εγκαταστήστε το RVM.

curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm

Λάβετε τη λίστα με τις διαθέσιμες εκδόσεις του Ruby.

rvm list known

Θα δείτε μια μακρά λίστα με εκδόσεις Ruby.

[redmine@vultr ~]$ rvm list known
# MRI Rubies

[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head

...

Εγκαταστήστε την πιο πρόσφατη έκδοση του Ruby από τη λίστα.

rvm install 2.4

Χρησιμοποιήστε την εγκατεστημένη έκδοση του Ruby.

rvm use 2.4

Μπορείτε να επαληθεύσετε την έκδοσή του.

ruby -v

Θα δείτε μια παρόμοια έξοδο.

[redmine@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]

Εγκαταστήστε το bundler, το οποίο είναι ο διαχειριστής εξαρτήσεων για την εφαρμογή Ruby.

gem install bundler

Το Ruby είναι πλέον εγκατεστημένο. Πριν εγκαταστήσουμε το Redmine, θα χρειαστεί να εγκαταστήσουμε το Phusion Passenger.

Εγκαταστήστε το Passenger

Εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε το Passenger.

gem install passenger

Παρέχετε άδεια εκτέλεσης στον αρχικό κατάλογο του redmineχρήστη. Ο επιβάτης πρέπει να εκτελέσει τα δυαδικά αρχεία για να εξυπηρετήσει την εφαρμογή.

chmod o+x "/home/redmine"

Εγκαταστήστε τη λειτουργική μονάδα Apache για επιβάτες.

passenger-install-apache2-module

The installer script will ask you some questions. First, it will provide you information about the installation process. Then it will ask you to select the language which you will be using. Since our application is written in Ruby on Rails, select Ruby from the menu and press "Enter" to proceed further.

Which languages are you interested in?

Use <space> to select.
If the menu doesn't display correctly, press '!'

 ‣ ⬢  Ruby
   ⬡  Python
   ⬡  Node.js
   ⬡  Meteor

The installer will now check for requirements. The installer will not encounter any missing dependencies and will automatically proceed to compile and install the module.

Once the module is installed, it will prompt you to add the module into the Apache configuration file.

Almost there!

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
   <IfModule mod_passenger.c>
     PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
     PassengerDefaultRuby /home/redmine/.rvm/gems/ruby-2.4.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 as the user with which we are logged in now does not have sudo permissions. 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/httpd/conf/httpd.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.

Install 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 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/pgsql-10/bin/pg_config

Install the application dependencies required by the application.

bundle install --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.
Use `bundle info [gemname]` to see where a bundled gem is installed.

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.

Η εγκατάσταση της εφαρμογής Redmine έχει πλέον ολοκληρωθεί. Αλλάξτε την ιδιοκτησία και τα δικαιώματα των καταλόγων και των αρχείων.

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

Έχουμε διαμορφώσει όλα όσα χρειαζόμαστε από τον μη προνομιούχο χρήστη. Επιστρέψτε στον sudoχρήστη εκτελώντας το su - <username>.

Διαμόρφωση του Apache

Προσθέστε τη λειτουργική μονάδα Passenger για Apache στο αρχείο διαμόρφωσης Apache. Αυτό θα φορτώσει αυτόματα τη μονάδα Passenger.

echo "LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so" | sudo tee -a /etc/httpd/conf.modules.d/00-base.conf

Δημιουργήστε ένα νέο αρχείο εικονικού κεντρικού υπολογιστή για την εφαρμογή σας Redmine.

sudo nano /etc/httpd/conf.d/redmine.conf

Συμπληρώστε το αρχείο με το ακόλουθο περιεχόμενο.

<VirtualHost *:80>
    ServerName redmine.example.com

    DocumentRoot /home/redmine/redmine/public

    PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
    PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
    PassengerUser redmine

    <Directory /home/redmine/redmine/public>
      Allow from all
      Options -MultiViews
      Require all granted
    </Directory>
</VirtualHost>

Φροντίστε να το αντικαταστήσετε redmine.example.comμε το πραγματικό σας όνομα τομέα. Επίσης, βεβαιωθείτε ότι η διαδρομή προς το PassengerRootκαι PassengerRubyείναι σωστή. Η διαδρομή προς τα δυαδικά αρχεία μπορεί να αλλάξει όταν υπάρχει μια νέα κυκλοφορία του Ruby ή του Passenger. Για να βρείτε αυτές τις διαδρομές, εκτελέστε την ακόλουθη εντολή.

sudo su redmine -c "passenger-config about ruby-command"

Θα λάβετε την ακόλουθη έξοδο.

[user@vultr ~]$ sudo su redmine -c "passenger-config about ruby-command"
passenger-config was invoked through the following Ruby interpreter:
  Command: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  Version: ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
  To use in Apache: PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  To use in Nginx : passenger_ruby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  To use with Standalone: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/bin/passenger start

Μόλις δημιουργηθεί το αρχείο Virtual host, επανεκκινήστε τον διακομιστή ιστού Apache.

sudo systemctl restart httpd

Τροποποιήστε τη διαμόρφωση του τείχους προστασίας για να επιτρέπεται η θύρα 80μέσω του τείχους προστασίας.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload

Τώρα μπορείτε να αποκτήσετε πρόσβαση στη διεπαφή Redmine στο http://redmine.example.com. Είσοδος με όνομα χρήστη adminκαι κωδικό πρόσβασης admin. Κατά την πρώτη σας σύνδεση, το Redmine θα σας ζητήσει να ενημερώσετε τον κωδικό πρόσβασης.

Προστασία του Apache με Let's Encrypt SSL

Εφόσον η εγκατάσταση του Redmine είναι σε δημόσιο διακομιστή, συνιστάται η χρήση SSL για να διασφαλιστεί η ανταλλαγή των δεδομένων από τον διακομιστή.

Εγκαταστήστε το Certbot, το οποίο είναι η εφαρμογή πελάτη για το Let's Encrypt CA.

sudo yum -y install epel-release
sudo yum -y install certbot mod_ssl

Για να μπορέσετε να ζητήσετε για τα πιστοποιητικά, θα πρέπει να επιτρέψει το λιμάνι 80και την 443τυπική ή HTTPκαι HTTPSυπηρεσιών μέσω του τείχους προστασίας. Επειδή έχουμε ήδη επιτρέψει τη θύρα 80νωρίτερα, ας επιτρέψουμε τη θύρα 443.

sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

Σημείωση: Για να αποκτήσετε πιστοποιητικά από το Let's Encrypt CA, ο τομέας για τον οποίο πρόκειται να δημιουργηθούν τα πιστοποιητικά πρέπει να κατευθύνεται προς τον διακομιστή. Εάν όχι, κάντε τις απαραίτητες αλλαγές στις εγγραφές DNS του τομέα και περιμένετε να διαδοθεί το DNS προτού υποβάλετε ξανά το αίτημα πιστοποιητικού. Το Certbot ελέγχει την αρχή τομέα πριν από την παροχή των πιστοποιητικών.

Δημιουργήστε τα πιστοποιητικά SSL.

sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com

Τα πιστοποιητικά που δημιουργούνται είναι πιθανό να αποθηκευτούν στο /etc/letsencrypt/live/redmine.example.com/. Το πιστοποιητικό SSL θα αποθηκευτεί ως cert.pemκαι το ιδιωτικό κλειδί θα αποθηκευτεί ως privkey.pem.

Ας κρυπτογραφήσουμε τα πιστοποιητικά λήγουν σε 90 ημέρες, επομένως συνιστάται να ρυθμίσετε την αυτόματη ανανέωση των πιστοποιητικών χρησιμοποιώντας εργασίες Cron.

Ανοίξτε το αρχείο εργασίας Cron για τον rootχρήστη.

sudo crontab -e

Προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου.

30 5 * * * /usr/bin/certbot renew --quiet

Η παραπάνω εργασία Cron θα εκτελείται καθημερινά στις 5:30 π.μ. Εάν το πιστοποιητικό πρόκειται να λήξει, θα ανανεωθεί αυτόματα.

Επεξεργαστείτε το αρχείο εικονικού κεντρικού υπολογιστή που δημιουργήσαμε νωρίτερα για το Redmine.

sudo nano /etc/httpd/conf.d/redmine.conf

Τροποποιήστε το αρχείο του εικονικού κεντρικού υπολογιστή ώστε να μοιάζει με το ακόλουθο.

<VirtualHost *:80>
    Redirect permanent / https://www.example.com/
    ServerName 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 /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
    PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.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>

Αποθηκεύστε το αρχείο και βγείτε από το πρόγραμμα επεξεργασίας.

Κάντε επανεκκίνηση του Apache για να ισχύσουν οι αλλαγές.

sudo systemctl restart httpd

Τώρα μπορείτε να αποκτήσετε πρόσβαση στο Redmine HTTPSστο https://redmine.example.com.

Συγχαρητήρια, εγκαταστήσατε με επιτυχία το Redmine στην παρουσία του CentOS 7. Ξεκινήστε να αναπτύσσετε το έργο σας είτε δημιουργώντας είτε εισάγοντας το έργο σας.


Leave a Comment

Εγκαταστήστε το Plesk στο CentOS 7

Εγκαταστήστε το Plesk στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Plesk είναι ένας ιδιόκτητος πίνακας ελέγχου web host που επιτρέπει στους χρήστες να διαχειρίζονται τους προσωπικούς ή/και τους πελάτες τους ιστότοπους, βάσεις δεδομένων

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Πώς να εγκαταστήσετε το Squid Proxy στο CentOS

Το Squid είναι ένα δημοφιλές, δωρεάν πρόγραμμα Linux που σας επιτρέπει να δημιουργήσετε έναν διακομιστή μεσολάβησης web προώθησης. Σε αυτόν τον οδηγό, θα δείτε πώς να εγκαταστήσετε το Squid στο CentOS για να σας μετατρέψει

Πώς να εγκαταστήσετε το Lighttpd (Στοίβα LLMP) στο CentOS 6

Πώς να εγκαταστήσετε το Lighttpd (Στοίβα LLMP) στο CentOS 6

Εισαγωγή Το Lighttpd είναι ένα πιρούνι του Apache που έχει ως στόχο να είναι πολύ λιγότερο εντάσεως πόρων. Είναι ελαφρύ, εξ ου και το όνομά του, και είναι αρκετά απλό στη χρήση. Εγκατάσταση

Τροποποίηση Icinga2 για χρήση Μοντέλου Master/Client σε CentOS 6 ή CentOS 7

Τροποποίηση Icinga2 για χρήση Μοντέλου Master/Client σε CentOS 6 ή CentOS 7

Το Icinga2 είναι ένα ισχυρό σύστημα παρακολούθησης και όταν χρησιμοποιείται σε μοντέλο master-client, μπορεί να αντικαταστήσει την ανάγκη για ελέγχους παρακολούθησης που βασίζονται σε NRPE. Ο κύριος-πελάτης

Πώς να εγκαταστήσετε το Apache Cassandra 3.11.x στο CentOS 7

Πώς να εγκαταστήσετε το Apache Cassandra 3.11.x στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Apache Cassandra είναι ένα δωρεάν και ανοιχτού κώδικα σύστημα διαχείρισης βάσεων δεδομένων NoSQL που έχει σχεδιαστεί για να παρέχει επεκτασιμότητα, υψηλή

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Πώς να εγκαταστήσετε το Microweber στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Microweber είναι ένα ανοικτού κώδικα μεταφοράς και απόθεσης CMS και ηλεκτρονικό κατάστημα. Ο πηγαίος κώδικας Microweber φιλοξενείται στο GitHub. Αυτός ο οδηγός θα σας δείξει

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Πώς να εγκαταστήσετε το Vanilla Forum στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Vanilla forum είναι μια εφαρμογή φόρουμ ανοιχτού κώδικα γραμμένη σε PHP. Είναι πλήρως προσαρμόσιμο, εύκολο στη χρήση και υποστηρίζει εξωτερικά

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Πώς να εγκαταστήσετε το Mattermost 4.1 στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Mattermost είναι μια εναλλακτική λύση ανοιχτού κώδικα, που φιλοξενείται από τον εαυτό της στην υπηρεσία ανταλλαγής μηνυμάτων Slack SAAS. Με άλλα λόγια, με το Mattermost, μπορείτε περίπου

Ας κρυπτογραφήσουμε στο Plesk

Ας κρυπτογραφήσουμε στο Plesk

Ο πίνακας ελέγχου Plesk διαθέτει μια πολύ ωραία ενσωμάτωση για το Lets Encrypt. Το Lets Encrypt είναι ένας από τους μόνους παρόχους SSL που εκδίδει πιστοποιητικά πλήρως

Επιτρέπει την κρυπτογράφηση στο cPanel

Επιτρέπει την κρυπτογράφηση στο cPanel

Το Lets Encrypt είναι μια αρχή έκδοσης πιστοποιητικών αφιερωμένη στην παροχή πιστοποιητικών SSL δωρεάν. Το cPanel έχει δημιουργήσει μια τακτοποιημένη ενοποίηση για εσάς και τον πελάτη σας

Πώς να εγκαταστήσετε το Concrete5 στο CentOS 7

Πώς να εγκαταστήσετε το Concrete5 στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Concrete5 είναι ένα CMS ανοιχτού κώδικα που προσφέρει πολλές χαρακτηριστικές και χρήσιμες λειτουργίες για να βοηθήσει τους συντάκτες να παράγουν περιεχόμενο εύκολα και

Πώς να εγκαταστήσετε το Review Board στο CentOS 7

Πώς να εγκαταστήσετε το Review Board στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Το Review Board είναι ένα δωρεάν και ανοιχτού κώδικα εργαλείο για την ανασκόπηση του πηγαίου κώδικα, της τεκμηρίωσης, των εικόνων και πολλών άλλων. Είναι λογισμικό που βασίζεται στο web

Ρύθμιση ελέγχου ταυτότητας HTTP με Nginx στο CentOS 7

Ρύθμιση ελέγχου ταυτότητας HTTP με Nginx στο CentOS 7

Σε αυτόν τον οδηγό, θα μάθετε πώς να ρυθμίζετε τον έλεγχο ταυτότητας HTTP για έναν διακομιστή web Nginx που εκτελείται σε CentOS 7. Απαιτήσεις Για να ξεκινήσετε, θα χρειαστείτε

Πώς να εγκαταστήσετε το YOURLS στο CentOS 7

Πώς να εγκαταστήσετε το YOURLS στο CentOS 7

Το YOURLS (Your Own URL Shortener) είναι μια εφαρμογή συντόμευσης διευθύνσεων URL και ανάλυσης δεδομένων ανοιχτού κώδικα. Σε αυτό το άρθρο, θα καλύψουμε τη διαδικασία εγκατάστασης

Πώς να εγκαταστήσετε και να ρυθμίσετε το ArangoDB στο CentOS 7

Πώς να εγκαταστήσετε και να ρυθμίσετε το ArangoDB στο CentOS 7

Χρησιμοποιώντας ένα διαφορετικό σύστημα; Εισαγωγή Το ArangoDB είναι μια βάση δεδομένων NoSQL ανοιχτού κώδικα με ένα ευέλικτο μοντέλο δεδομένων για έγγραφα, γραφήματα και κλειδιά-τιμές. είναι

Χρήση του Etckeeper για έλεγχο έκδοσης του /etc

Χρήση του Etckeeper για έλεγχο έκδοσης του /etc

Εισαγωγή Ο κατάλογος /etc/ παίζει κρίσιμο ρόλο στον τρόπο λειτουργίας ενός συστήματος Linux. Ο λόγος για αυτό είναι επειδή σχεδόν κάθε διαμόρφωση συστήματος

Γιατί πρέπει να χρησιμοποιήσετε το SSHFS; Πώς να προσαρτήσετε ένα απομακρυσμένο σύστημα αρχείων με SSHFS στο CentOS 6

Γιατί πρέπει να χρησιμοποιήσετε το SSHFS; Πώς να προσαρτήσετε ένα απομακρυσμένο σύστημα αρχείων με SSHFS στο CentOS 6

Πολλοί διαχειριστές συστημάτων διαχειρίζονται μεγάλες ποσότητες διακομιστών. Όταν χρειάζεται πρόσβαση στα αρχεία σε διαφορετικούς διακομιστές, συνδέεστε σε καθένα ξεχωριστά περίπου

Ρύθμιση διακομιστή Half Life 2 στο CentOS 6

Ρύθμιση διακομιστή Half Life 2 στο CentOS 6

Αυτό το σεμινάριο θα καλύψει τη διαδικασία εγκατάστασης ενός διακομιστή παιχνιδιών Half Life 2 στο σύστημα CentOS 6. Βήμα 1: Εγκατάσταση των προαπαιτούμενων Για να ρυθμίσετε το ou

Πώς να εγκαταστήσετε το Laravel GitScrum στο CentOS 7

Πώς να εγκαταστήσετε το Laravel GitScrum στο CentOS 7

Το Laravel GitScrum ή GitScrum είναι ένα εργαλείο παραγωγικότητας ανοιχτού κώδικα που έχει σχεδιαστεί για να βοηθά τις ομάδες ανάπτυξης να εφαρμόσουν τη μεθοδολογία Scrum με παρόμοιο τρόπο

Πώς να εγκαταστήσετε το PowerDNS στο CentOS

Πώς να εγκαταστήσετε το PowerDNS στο CentOS

Εισαγωγή Σε αυτό το σεμινάριο Vultr, θα μάθετε πώς να εγκαταστήσετε το PowerDNS. Το PowerDNS είναι ένα πρόγραμμα για την εκτέλεση των δικών σας διακομιστών ονομάτων. Είναι πολύ χρήσιμο όταν

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Η Τεχνητή Νοημοσύνη δεν είναι στο μέλλον, είναι εδώ ακριβώς στο παρόν Σε αυτό το blog Διαβάστε πώς οι εφαρμογές Τεχνητής Νοημοσύνης έχουν επηρεάσει διάφορους τομείς.

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Επιθέσεις DDOS: Μια σύντομη επισκόπηση

Είστε επίσης θύμα των επιθέσεων DDOS και έχετε μπερδευτεί σχετικά με τις μεθόδους πρόληψης; Διαβάστε αυτό το άρθρο για να λύσετε τις απορίες σας.

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Έχετε αναρωτηθεί ποτέ πώς κερδίζουν χρήματα οι χάκερ;

Μπορεί να έχετε ακούσει ότι οι χάκερ κερδίζουν πολλά χρήματα, αλλά έχετε αναρωτηθεί ποτέ πώς κερδίζουν τέτοια χρήματα; ας συζητήσουμε.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Επαναστατικές εφευρέσεις από την Google που θα σας φέρουν εύκολη στη ζωή.

Θέλετε να δείτε επαναστατικές εφευρέσεις της Google και πώς αυτές οι εφευρέσεις άλλαξαν τη ζωή κάθε ανθρώπου σήμερα; Στη συνέχεια, διαβάστε στο blog για να δείτε τις εφευρέσεις της Google.

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Friday Essential: Τι συνέβη με τα αυτοκίνητα που κινούνται με AI;

Η ιδέα των αυτοκινούμενων αυτοκινήτων να βγαίνουν στους δρόμους με τη βοήθεια της τεχνητής νοημοσύνης είναι ένα όνειρο που έχουμε εδώ και καιρό. Όμως, παρά τις πολλές υποσχέσεις, δεν φαίνονται πουθενά. Διαβάστε αυτό το blog για να μάθετε περισσότερα…

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Τεχνολογική μοναδικότητα: Ένα μακρινό μέλλον του ανθρώπινου πολιτισμού;

Καθώς η Επιστήμη εξελίσσεται με γρήγορους ρυθμούς, αναλαμβάνοντας πολλές από τις προσπάθειές μας, αυξάνονται και οι κίνδυνοι να υποβάλλουμε τον εαυτό μας σε μια ανεξήγητη Ιδιότητα. Διαβάστε τι σημαίνει η μοναδικότητα για εμάς.

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Εξέλιξη της αποθήκευσης δεδομένων – Infographic

Οι μέθοδοι αποθήκευσης των δεδομένων εξελίσσονται μπορεί να είναι από τη γέννηση των Δεδομένων. Αυτό το ιστολόγιο καλύπτει την εξέλιξη της αποθήκευσης δεδομένων με βάση ένα infographic.

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Λειτουργίες Αρχιτεκτονικών Επιπέδων Αναφοράς Μεγάλων Δεδομένων

Διαβάστε το ιστολόγιο για να μάθετε διαφορετικά επίπεδα στην Αρχιτεκτονική Μεγάλων Δεδομένων και τις λειτουργίες τους με τον απλούστερο τρόπο.

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

6 εκπληκτικά οφέλη από την ύπαρξη έξυπνων οικιακών συσκευών στη ζωή μας

Σε αυτόν τον ψηφιακό κόσμο, οι έξυπνες οικιακές συσκευές έχουν γίνει κρίσιμο μέρος της ζωής. Ακολουθούν μερικά εκπληκτικά οφέλη των έξυπνων οικιακών συσκευών σχετικά με το πώς κάνουν τη ζωή μας να αξίζει και να απλοποιείται.

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Η ενημέρωση του συμπληρώματος macOS Catalina 10.15.4 προκαλεί περισσότερα προβλήματα από την επίλυση

Πρόσφατα, η Apple κυκλοφόρησε το macOS Catalina 10.15.4 μια συμπληρωματική ενημέρωση για την επιδιόρθωση προβλημάτων, αλλά φαίνεται ότι η ενημέρωση προκαλεί περισσότερα προβλήματα που οδηγούν σε bricking των μηχανών mac. Διαβάστε αυτό το άρθρο για να μάθετε περισσότερα