Hvernig á að setja upp og stilla Phabricator á CentOS 7

Phabricator er háþróaður opinn hugbúnaðarþróunarvettvangur sem hægt er að nota til að:

  • Skoðun og endurskoðunarreglur.
  • Gestgjafi Git/Hg/SVN repos.
  • Fylgstu með pöddum.
  • Stjórna verkefnum.
  • Samskipti við liðsmenn.
  • Og gera miklu meira!

Þökk sé miklum eiginleikum og óvenjulegri frammistöðu verður Phabricator sífellt vinsælli í opnum hugbúnaðarsamfélaginu.

Í þessari grein mun ég sýna þér hvernig á að setja upp Phabricator á Vultr CentOS 7 netþjónstilvik.

Forkröfur

  • Settu upp Vultr CentOS 7 netþjónstilvik frá grunni;
  • Skráðu þig inn frá SSH flugstöðinni með því að nota sudo notanda sem ekki er rót.

Skref 1: Kerfisuppfærsla

Uppfærðu CentOS 7 kerfið þitt og endurræstu síðan:

yum update -y && shutdown -r now

Eftir að kerfið er ræst skaltu skrá þig inn sem notandi sem ekki er rót með sudo aðgangi.

Skref 2: Settu upp MariaDB

Settu upp MariaDB netþjóninn:

sudo yum install mariadb mariadb-server

Ræstu og virkjaðu MariaDB þjónustuna:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Í öryggisskyni skaltu keyra MySQL örugga uppsetningarforritið:

sudo /usr/bin/mysql_secure_installation

Ljúktu þessu ferli í samræmi við leiðbeiningarnar hér að neðan:

Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password:<your-password>
Re-enter new password:<your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Skref 3: Settu upp Apache

Settu upp Apache vefþjóninn með YUM:

sudo yum install httpd

Breyttu sjálfgefnum stillingum til að auka öryggi:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Byrjaðu og virkjaðu Apache þjónustuna:

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Skref 4: Settu upp PHP

Settu upp PHP og nauðsynlegar viðbætur:

sudo yum install php php-mysqli php-mbstring php-gd php-curl php-cli php-common php-process

Skref 5: Settu upp git

sudo yum install git

Skref 6: Sæktu og settu upp Phabricator

cd ~
mkdir phabricator
cd phabricator
git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git
cd ~
sudo chown -R apache: ~/phabricator
sudo mv ~/phabricator /var/www/html

Skref 7: Settu upp sýndarhýsil fyrir Phabricator

sudo vi /etc/httpd/conf.d/phabricator.conf

Fylltu út eftirfarandi kóðahluta:

Athugið: Þú þarft að skipta út admin@example.com, phabricator.example.com, www.phabricator.example.com, /var/log/httpd/phabricator.example.com-error_log, og /var/log/httpd/phabricator.example.com-access_logmeð eigin gildum.

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/phabricator/phabricator/webroot/
    ServerName phabricator.example.com
    ServerAlias www.phabricator.example.com
    RewriteEngine on
    RewriteRule ^/rsrc/(.*)     -                       [L,QSA]
    RewriteRule ^/favicon.ico   -                       [L,QSA]
    RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
    <Directory /var/www/html/phabricator/phabricator/webroot/>
        AllowOverride All
    </Directory>
    ErrorLog /var/log/httpd/phabricator.example.com-error_log
    CustomLog /var/log/httpd/phabricator.example.com-access_log common
</VirtualHost>

Vista og hætta:

:wq

Endurræstu Apache þjónustuna til að koma breytingunum þínum í framkvæmd:

sudo systemctl restart httpd.service

Skref 8: Settu upp MariaDB skilríki fyrir Phabricator

Áður en þú getur notað Phabricator þarftu að setja upp MariaDB skilríki:

cd /var/www/html/phabricator/phabricator/
sudo ./bin/config set mysql.host localhost
sudo ./bin/config set mysql.port 3306
sudo ./bin/config set mysql.user root
sudo ./bin/config set mysql.pass <your-MySQL-root-password>

Fylltu út Phabricator kerfi:

./bin/storage upgrade

Meðan á þessu ferli stendur þarftu að slá inn „y“ tvisvar:

Before running storage upgrades, you should take down the Phabricator web
interface and stop any running Phabricator daemons (you can disable this
warning with --force).

    Are you ready to continue? [y/N] y

...

MySQL needs to copy table data to make some adjustments, so these migrations may take some time.

    Fix these schema issues? [y/N] y

Skref 9: Breyttu eldveggsreglum og settu upp Phabricator admin reikning

Þú þarft að leyfa umferð á heimleið á sjálfgefna HTTP-tengi 80:

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

Notaðu síðan vafrann þinn til að heimsækja:

http://<your-Vultr-server-IP>

Þér verður kynnt Phabricator skráningarvefsíðan. Búðu til stjórnandareikning fyrir daglega stjórnun.

Nú skulum við skoða hvernig á að stilla Phabricator.

Skref 10: Lagaðu óleyst uppsetningarvandamál

Before you can use Phabricator with a peace of mind, you have to fix several setup issues. The number of setup issues varies, in my case, there were 16. Let's solve them one by one.

Issue 1: Base URI Not Configured

Click the "Base URI Not Configured" link to get into the issue details page in which you can learn more about this issue.

In order to fix this issue, you need to execute the following commands on your SSH terminal. Be sure to use the proper IP address.

cd /var/www/html/phabricator/phabricator/
sudo ./bin/config set phabricator.base-uri 'http://<your-Vultr-server-IP>'

Then in your web browser, click the "Reload Page" button on the issue details page. If your repair worked, the text on the page will become "Issue Resolved". Click the "Return to Open Issue List" link to investigate other issues.

Issue 2: No Authentication Providers Configured

Click the "No Authentication Providers Configured" link to get into the issue details page.

In order to fix this issue, you need to specify the authentication provider.

Click the "Auth Application" link and then the "+ Add Provider" button to get into the "Add Auth Provider" page. Choose an appropriate authentication provider, and then click the "Continue" button. Here I chose "Username/Password".

In the "Add Auth Provider: Username/Password" page, you can review more detailed settings, then click the "Add Provider" button.

You can add more authentication providers in the same fashion, but for now, click the "You have X unresolved setup issues..." link to handle other issues.

Issue 3: Phabricator Daemons Are Not Running

Click the "Phabricator Daemons Are Not Running" link to enter the details page.

In order to solve this issue, run the command below on your SSH terminal:

cd /var/www/html/phabricator/phabricator/
./bin/phd start

Click the "Reload Page" button to confirm the result.

Issue 4: PHP post_max_size Not Configured

Run the following commands on your SSH terminal to fix this issue:

sudo sed -i "s/post_max_size = 8M/post_max_size = 32M/" /etc/php.ini
sudo systemctl restart httpd.service

Click the "Reload Page" button to confirm your modifications.

Issue 5-10: MySQL-related issues

There are six MySQL-related issues in total:

  • Small MySQL "maxallowedpacket"
  • MySQL STRICTALLTABLES Mode Not Set
  • MySQL is Using Default Stopword File
  • MySQL is Using Default Minimum Word Length
  • MySQL is Using the Default Boolean Syntax
  • MySQL May Run Slowly

As a matter of convenience, let's fix them in one batch.

Á SSH flugstöðinni þinni skaltu breyta MySQL stillingarskránni með vi:

sudo vi /etc/my.cnf

Undir línunum þremur efst:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

Bættu við sex línum hér að neðan:

max_allowed_packet=32M
sql_mode=STRICT_ALL_TABLES
ft_stopword_file=/var/www/html/phabricator/phabricator/resources/sql/stopwords.txt
ft_min_word_len=3
ft_boolean_syntax=' |-><()~*:""&^'
innodb_buffer_pool_size=1600M        # about 40% of your system memory

Viðvörun: Þú þarft að stilla rétta Innodb biðminnisstærð í samræmi við tiltekna stærð netþjónsins. Venjulega ætti stærð Innodb biðminni að vera um 40% af minni vélarinnar þinnar. Til dæmis, ef þú ert að nota vél með 4G minni, þá væri hæfileg stærð Innodb biðminni 1600M. Ef þú ert að nota vél með lítið minni (svo sem 768M), gætir þú þurft að úthluta minni stærð en 40% af minnismagni vélarinnar (td 220M) til að spara meira minni fyrir kerfið.

Vista og hætta:

:wq

Endurræstu MariaDB þjónustuna:

sudo systemctl restart mariadb.service

Að lokum skaltu keyra eftirfarandi skipun:

mysql -u root -p -e "REPAIR TABLE phabricator_search.search_documentfield"

Smelltu á "Endurhlaða síðu" hnappinn til að skoða viðleitni þína.

11. mál: Settu upp Pygments til að bæta setningafræði auðkenningu

Á CentOS 7 hefur Pygments verið sett upp en ekki sjálfgefið virkt, þú þarft að virkja það handvirkt:

Smelltu á hlekkinn: Breyta "pygments.enabled", Veldu "Nota Pygments" í fellivalmyndinni "Gagnagrunnsgildi" og smelltu síðan á "Vista stillingarfærslu" hnappinn.

12. mál: Tímabelti miðlara ekki stillt

Breyttu php.iniskránni:

sudo vi /etc/php.ini

Skiptu um línuna:

;date.timezone =

Með:

date.timezone = America/Los_Angeles

Vista og hætta:

:wq

Athugið: "America/Los_Angeles" er tímabeltisgildi vélarinnar minnar, þú þarft að finna viðeigandi tímabeltisgildi fyrir þitt eigið netþjónstilvik hér .

Endurræstu Apache þjónustuna:

sudo systemctl restart httpd.service

Smelltu á "Endurhlaða síðu" hnappinn til að skoða niðurstöðuna.

13. mál: Stór skráageymsla ekki stillt

Þú þarft að nota rétta geymslulausn fyrir stórar skrár í samræmi við þína eigin stillingu. Í bili geturðu smellt á "Hunsa uppsetningarvandamál" hnappinn til að sleppa.

14. mál: Annað skráarlén ekki stillt

Segjum að þú hafir sett upp annað skráarlén eða CDN, síðan í SSH flugstöðinni:

cd /var/www/html/phabricator/phabricator/
sudo ./bin/config set security.alternate-file-domain <https://files.example.com>

Smelltu á "Endurhlaða síðu" hnappinn til að skoða niðurstöðuna.

15. mál: Staðbundin slóð geymslu sem vantar

Notaðu eftirfarandi skipanir til að leysa þetta mál:

sudo mkdir /var/repo
sudo chown apache: /var/repo

Smelltu á "Endurhlaða síðu" hnappinn til að skoða niðurstöðuna.

16. mál: PHP viðbótin 'APC' ekki uppsett

sudo yum install php-pear php-devel httpd-devel pcre-devel gcc make
sudo pecl install apc

Meðan á uppsetningarferlinu á APC stendur, ýttu alltaf á Enter til að nota sjálfgefna valmöguleikann.

sudo vi /etc/php.ini

Bættu fjórum línum við lok skráarinnar:

extension=apc.so
apc.write_lock = On
apc.slam_defense = Off
apc.stat = Off

Vista og hætta:

:wq

Endurræstu Apache þjónustuna:

sudo systemctl restart httpd.service

Smelltu á "Endurhlaða síðu" hnappinn til að athuga niðurstöðuna.

Það er allt og sumt. Til hamingju með kóðun!

Skildu eftir athugasemd

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira