เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เช† เชตเชฐเซเชทเซ‡ เช…เชฎเซ‡ เช‰เชคเซเชชเชพเชฆเชจเชจเซ‡ เชธเซเชงเชพเชฐเชตเชพ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเซ€ เชœเชพเชคเชจเซ‡ เชฎเชนเชคเซเชตเชพเช•เชพเช‚เช•เซเชทเซ€ เชฒเช•เซเชทเซเชฏเซ‹ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเชพ เช›เซ‡.

เช•เซ‡เชŸเชฒเชพเช• เช•เชพเชฐเซเชฏเซ‹ เชฎเชพเชŸเซ‡ เช—เช‚เชญเซ€เชฐ เชคเซˆเชฏเชพเชฐเซ€เชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เช›เซ‡, เชœเซ‡เชจเชพ เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชชเชพเชธเซ‡เชฅเซ€ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€เช เช›เซ€เช: เช…เชฎเซ‡ เชกเซ‡เชตเชฒเชชเชฐ, เชธเชฟเชธเซเชŸเชฎ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐเซเชธ, เชŸเซ€เชฎ เชฒเซ€เชกเชฐเซเชธ เช…เชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชจเชฟเชทเซเชฃเชพเชคเซ‹เชจเซ‡ เช‘เชซเชฟเชธเชฎเชพเช‚ เช†เชฎเช‚เชคเซเชฐเชฟเชค เช•เชฐเซ€เช เช›เซ€เช.

เช•เซ‡เชŸเชฒเชพเช•เชฎเชพเช‚, เช…เชฎเซ‡ เชชเซเชฐเชคเชฟเชธเชพเชฆเชจเชพ เชœเชตเชพเชฌเชฎเชพเช‚ เชธเชฐเซเชตเชฐ เชœเชพเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช, เชœเซ‡เชฎ เช•เซ‡ เช•เซ‡เชธ เชนเชคเซ‹ เช…เชธเซเชชเชทเซเชŸ เชถเชฟเช•เซเชทเชฃ เชตเชฟเชฆเซเชฏเชพเชฐเซเชฅเซ€เช“ เชธเชพเชฅเซ‡. เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ UI/UX, เชธเช‚เชฆเชฐเซเชญ เชชเซเชธเซเชคเช• เชฎเชพเชŸเซ‡ เชถเซˆเช•เซเชทเชฃเชฟเช• เชฒเซ‡เช–เซ‹เชจเซ‹ เชฌเซ‡เช•เชฒเซ‹เช— เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช…เชจเซเชญเชตเชจเซ‡ เชฌเชนเซ‡เชคเชฐ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชฎเซ‹เชŸเซ€ เชฏเซ‹เชœเชจเชพเช“เชจเซ€ เชšเชฐเซเชšเชพ เช•เชฐเชคเซ€ เช–เซ‚เชฌ เชœ เชตเซเชฏเชธเซเชค เชšเซ‡เชŸเซเชธ เช›เซ‡.

เชฎเซ‹เชŸเชพเชญเชพเช—เชจเชพ เชซเซ‡เชฐเชซเชพเชฐเซ‹เชจเซ‡ เช˜เชฃเชพ เชตเชฟเช•เชพเชธ เช•เชฒเชพเช•เซ‹เชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฌเชœเชพเชฐ - เชเช• เชธเช‚เชชเซ‚เชฐเซเชฃเชชเชฃเซ‡ เช…เชฒเช— เชตเชพเชฐเซเชคเชพ. เชธเซเชจเซ‡เชชเชถเซ‹เชŸเชจเชพ เช†เช—เชฎเชจ เชธเชพเชฅเซ‡, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฌเชพเชนเซเชฏ เชธเชฟเชธเซเชŸเชฎ เชชเซเชฐเชฌเช‚เชงเช•เซ‹เชจเซ‡ เช†เช•เชฐเซเชทเชตเชพเชจเซ€ เชคเช• เช›เซ‡ เชœเซ‡เช“ เชเช• เช›เชฌเซ€ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ เชœเซ‡เชฅเซ€ เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชเช• เชฆเชฟเชตเชธเชฎเชพเช‚ เชถเชพเชฌเซเชฆเชฟเช• เชฐเซ‚เชชเซ‡ เชฌเชœเชพเชฐเชฎเชพเช‚ เชธเชฎเชพเชตเซ€ เชถเช•เซ€เช.

เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชซเชพเชณเซ‹ เช†เชชเชตเซ‹ เชฌเชœเชพเชฐ เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เช•เซเชฒเชพเชฏเชจเซเชŸ เชฆเซเชตเชพเชฐเชพ เชคเซˆเชฏเชพเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒเซ€ เช…เชฎเชพเชฐเซ€ เชจเชตเซ€ เชˆเชฎเซ‡เชœเชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ RUVDS เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชถเซเช‚ เช†เชตเชถเซเชฏเช• เชนเชถเซ‡ เชคเซ‡ เชฌเชคเชพเชตเซ€เชถเซเช‚ เชŸเซ‡เช•เชเซ€ - GitLab

เชธเซ‡เชจเซเชŸเซ‹เชธ 8 เชชเชฐ เช—เชฟเชŸเชฒเซ‡เชฌ เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเซเช‚

เช—เชฟเชŸเชฒเซ‡เชฌ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชฏเซเชฐเชพเช 8 เชœเซ€เชฌเซ€ เชฐเซ‡เชฎ เช…เชจเซ‡ 2 เชธเซ€เชชเซ€เชฏเซ เช•เซ‹เชฐเซ‹ เชธเชพเชฅเซ‡ เชธเชฐเซเชตเชฐ เชชเชธเช‚เชฆ เช•เชฐเซเชฏเซเช‚ (4 เชœเซ€เชฌเซ€ เช…เชจเซ‡ 1 เชธเซ€เชชเซ€เชฏเซ เชถเช•เซเชฏ เช›เซ‡, เชชเชฐเช‚เชคเซ เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เชคเชฎเชพเชฐเซ‡ เชธเซเชตเซ‡เชช เชซเชพเช‡เชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชชเชกเชถเซ‡, เช…เชจเซ‡ เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เช—เชฟเชŸเชฒเซ‡เชฌเชจเซเช‚ เชชเซเชฐเชฆเชฐเซเชถเชจ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เชฐเซ€เชคเซ‡ เช“เช›เซเช‚ เช›เซ‡.

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เชšเชพเชฒเซ‹ เช–เชพเชคเชฐเซ€ เช•เชฐเซ€เช เช•เซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชœเชฐเซ‚เชฐเซ€ เชชเซ‡เช•เซ‡เชœเซ‹ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‡เชฒเชพ เช›เซ‡:

sudo dnf install -y curl policycoreutils

เชšเชพเชฒเซ‹ เชชเซ‹เชฐเซเชŸ 80 เช…เชจเซ‡ 443 เชจเซ€ เชเช•เซเชธเซ‡เชธ เช–เซ‹เชฒเซ€เช:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

เชšเชพเชฒเซ‹ เช—เชฟเชŸเชฒเซ‡เชฌ เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€ เช‰เชฎเซ‡เชฐเซ€เช:

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

เชœเซ‹ เชธเชฐเซเชตเชฐ เชชเชพเชธเซ‡ DNS เชจเชพเชฎ เช—เซ‹เช เชตเซ‡เชฒเซเช‚ เชนเซ‹เชฏ, เชคเซ‹ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ Gitlab เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชœเซ‹ เชคเชฎเซ‡ https:// เช‰เชชเชธเชฐเซเช—เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ Gitlab เช†เชชเซ‹เช†เชช Lets Encrypt เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชถเซ‡.

เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเซ‡ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจ เชฎเชพเชŸเซ‡ เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸ เชฌเชจเชพเชตเซ€ เชฐเชนเซเชฏเชพ เชนเชคเชพ, เชชเช›เซ€ เชฏเซเชฐเชพเช เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸ เชธเชฐเชจเชพเชฎเซเช‚ เชธเซ‡เชŸ เช•เชฐเซเชฏเซเช‚ (เชœเซ‡ เชชเช›เซ€ เช•เซ‹เชˆ เชธเชฎเชธเซเชฏเชพ เชตเชฟเชจเชพ เชญเชตเชฟเชทเซเชฏเชฎเชพเช‚ เชฌเชฆเชฒเซ€ เชถเช•เชพเชฏ เช›เซ‡):

sudo EXTERNAL_URL="http://0.0.0.0" dnf install -y gitlab-ee

เช† เชชเช›เซ€, เชคเชฎเซ‡ เชœเชˆเชจเซ‡ เชคเชชเชพเชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช•เซ‡ Gitlab เชธเซ‡เชตเชพเช“ เช•เชพเชฎ เช•เชฐเซ€ เชฐเชนเซ€ เช›เซ‡

http://vps_ip_address/

เชธเชฟเชธเซเชŸเชฎ เชคเชฎเชจเซ‡ เชฐเซ‚เชŸ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เชเช•เชพเช‰เชจเซเชŸ เชฎเชพเชŸเซ‡ เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เชชเชพเชธเชตเชฐเซเชก เชธเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซ‚เช›เชถเซ‡.

เช† เชคเชฌเช•เซเช•เซ‡, เช…เชฎเซ‡ เชธเชฐเซเชตเชฐเชจเซ‹ เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชฒเชˆเชถเซเช‚, เช…เชจเซ‡ เชชเช›เซ€ เช…เชฎเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชคเซ‡เชจเซ‡ เช—เซ‹เช เชตเซ€เชถเซเช‚.

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เช…เชจเซ‡ เชคเซ‡ เชฌเชงเชพ เช›เซ‡!

เชฌเซ‹เชจเชธ: เช…เชฎเซ‡ เชคเชฎเชจเซ‡ เช•เชนเซ€เชถเซเช‚ เช•เซ‡ เชคเชฎเซ‡ เชตเชฟเชธเซเชคเซƒเชค เช•เชฐเซ€เชจเซ‡ เช•เชˆ เชฐเชธเชชเซเชฐเชฆ เชตเชธเซเชคเซเช“ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เชตเชฐเซเชšเซเชฏเซเช…เชฒ GitLab เช›เชฌเซ€ เชธเชพเชฅเซ‡.

Grafana เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ Gitlab เชฎเซ‹เชจเซ€เชŸเชฐเซ€เช‚เช—

เชคเซเชฐเชฃ เชตเชฐเซเชท เชชเชนเซ‡เชฒเชพเช‚, Gitlab เชŸเซ€เชฎเซ‡ Gitlab เชธเซ‡เชตเชพเช“ เชธเช‚เชฌเช‚เชงเชฟเชค เชตเชฟเชถเชพเชณ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธเชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎ เชฒเชพเช—เซ เช•เชฐเซ€ เชนเชคเซ€.

เชคเซเชฏเชพเชฐเชฅเซ€, Gitlab เช เชคเซ‡เชจเชพ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชชเซ‡เช•เซ‡เชœเชจเซ‡ เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เชธเชพเชฅเซ‡ เชถเชฟเชชเชฟเช‚เช— เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚ เช›เซ‡ เชœเซ‡เชฅเซ€ เชคเซ‡เชจเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒเซ€ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— เช•เซเชทเชฎเชคเชพเช“เชจเซ‹ เชฒเชพเชญ เชฒเชˆ เชถเช•เซ‡.

เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เช เช“เชชเชจ (เช…เชชเชพเชšเซ‡ 2.0) เชŸเชพเช‡เชฎ เชธเซ€เชฐเชฟเช เชกเซ€เชฌเซ€เชเชฎเชเชธ เช›เซ‡ เชœเซ‡ เช—เซ‹เชฎเชพเช‚ เชฒเช–เชพเชฏเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ เชฎเซ‚เชณ เชฐเซ‚เชชเซ‡ เชธเชพเช‰เชจเซเชกเช•เซเชฒเชพเช‰เชก เชชเชฐ เชตเชฟเช•เชธเชฟเชค เช›เซ‡. เชฌเซ€เชœเชพ เชถเชฌเซเชฆเซ‹เชฎเชพเช‚ เช•เชนเซ€เช เชคเซ‹, เช† เชตเชธเซเชคเซ เชคเชฎเชพเชฐเชพ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธเชจเซ‡ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธเชจเซ€ เชเช• เชฐเชธเชชเซเชฐเชฆ เชตเชฟเชถเซ‡เชทเชคเชพ เช เช›เซ‡ เช•เซ‡ เชคเซ‡ เชชเซ‹เชคเซ‡ เช†เชชเซ‡เชฒ เชธเซ‡เชตเชพเช“เชจเชพ เชธเชฎเซ‚เชนเชฎเชพเช‚เชฅเซ€ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เช–เซ‡เช‚เชšเซ‡ เช›เซ‡ (เชชเซเชฒ เช•เชฐเซ‡ เช›เซ‡). เช†เชจเซ‡ เช•เชพเชฐเชฃเซ‡, เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เช•เซ‹เชˆเชชเชฃ เช•เชคเชพเชฐ เช…เชฅเชตเชพ เชคเซ‡เชจเชพ เชœเซ‡เชตเชพ เช•เช‚เชˆเช•เชฅเซ€ เชญเชฐเชพเชˆ เชถเช•เชถเซ‡ เชจเชนเซ€เช‚, เชœเซ‡เชจเซ‹ เช…เชฐเซเชฅ เช›เซ‡ เช•เซ‡ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— เช•เซเชฏเชพเชฐเซ‡เชฏ เชธเชฟเชธเซเชŸเชฎเชจเซ€ เช…เชกเชšเชฃ เชฌเชจเชถเซ‡ เชจเชนเซ€เช‚. เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชชเชฃ เชฐเชธเชชเซเชฐเชฆ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เช•เซ‹เชˆเชชเชฃ เช†เชกเซ€ เชธเซเช•เซ‡เชฒเชฟเช‚เช— เช…เชฅเชตเชพ เช‰เชšเซเชš เช‰เชชเชฒเชฌเซเชงเชคเชพ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชคเซเช‚ เชจเชฅเซ€.

เชเช• เชตเชฐเซเชท เชชเชนเซ‡เชฒเชพเช‚, เช—เชฟเชŸเชฒเซ‡เชฌ เชŸเซ€เชฎเซ‡ เชคเชพเชฐเชฃ เช•เชพเชขเซเชฏเซเช‚ เชนเชคเซเช‚ เช•เซ‡ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก เชตเชฟเชจเชพ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เช–เซ‚เชฌ เช…เชจเซเช•เซ‚เชณ เชจเชฅเซ€. เชคเซ‡เชฅเซ€ เชคเซ‡เช“เช เช—เซเชฐเชพเชซเชจเชพเชจเซ‡ เชฎเซ‡เชจเซเชฏเซเช…เชฒเซ€ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชคเซ‡เชฎเชจเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เชจเซ‡ เชกเซ‡เชŸเชพเชจเซ€ เช•เชฒเซเชชเชจเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เชธเซเชŸเชฎเชพเช‡เชเซเชก เชกเซ‡เชถเชฌเซ‹เชฐเซเชกเซเชธ เชธเชพเชฅเซ‡ เช—เซเชฐเชพเชซเชจเชพเชจเซ‡ เชธเช‚เช•เชฒเชฟเชค เช•เชฐเซเชฏเซเช‚.

เชธเช‚เชธเซเช•เชฐเชฃ 12.0 เชฅเซ€, เช—เชฟเชŸเชฒเซ‡เชฌเซ‡ เช—เซเชฐเชพเชซเชจเชพเชจเซ‡ เชธเช‚เช•เชฒเชฟเชค เช•เชฐเซเชฏเซเช‚ เช›เซ‡, เชœเซ‡ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ SSO เชธเชพเชฅเซ‡ เช—เซ‹เช เชตเซ‡เชฒ เช›เซ‡, เช…เชจเซ‡ เช† URL เชชเชฐ เช‰เชชเชฒเชฌเซเชง เช›เซ‡.

เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เชธเชพเชฅเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เชเช•เซ€เช•เชฐเชฃเชจเชพ เชฌเซ‡ เช…เชฒเช— เช…เชฒเช— เชญเชพเช—เซ‹ เช›เซ‡:

  • เช—เชฟเชŸเชฒเซ‡เชฌ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— (เช“เชฎเซเชจเชฟเชฌเชธ)
  • เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชตเซเชฏเช•เซเชคเชฟเช—เชค เช—เชฟเชŸเชฒเซ‡เชฌ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‹เชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเชตเซเช‚

เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซ‹

"เช“เชฎเซเชจเชฟเชฌเชธ" เชคเซ‡ เช›เซ‡ เชœเซ‡เชจเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เชคเซ‡เชจเซเช‚ เชฎเซเช–เซเชฏ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชชเซ‡เช•เซ‡เชœ เช•เชนเซ‡ เช›เซ‡.

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

Grafana เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเซ‡เชŸ เช•เชฐเชตเซเช‚

Grafana เชฒเซ‰เช—เชฟเชจ เช…เชจเซ‡ เชชเชพเชธเชตเชฐเซเชก เชกเชฟเชซเซ‰เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เช…เช•เซเชทเชฎ เช›เซ‡ (เชซเช•เซเชค SSO เชฒเซ‰เช—เชฟเชจเชจเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช›เซ‡), เชชเชฐเช‚เชคเซ เชœเซ‹ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เช…เชงเชฟเช•เชพเชฐเซ‹ เชธเชพเชฅเซ‡เชจเชพ เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚ เชฒเซ‰เช— เช‡เชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เช…เชฅเชตเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเชพเชฎ เช…เชจเซ‡ เชชเชพเชธเชตเชฐเซเชก เชธเชพเชฅเซ‡ เชฒเซ‰เช— เช‡เชจ เช•เชฐเชตเชพเชฎเชพเช‚ เชธเช•เซเชทเชฎ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เช†เชจเซ‡ Gitlab เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเชฎเชพเช‚ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชซเชพเช‡เชฒ /etc/gitlab/gitlab .rb เช…เชจเซเชฐเซ‚เชช เชฒเชพเช‡เชจเชจเซ‡ เชธเช‚เชชเชพเชฆเชฟเชค เช•เชฐเซ€เชจเซ‡:

grafana['disable_login_form'] = false

เช…เชจเซ‡ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ Gitlab เชชเซเชจเชƒเชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชฟเชค เช•เชฐเซ‹:

sudo gitlab-ctl reconfigure

เชœเซ‹ เชคเชฎเซ‡ เช…เชฎเชพเชฐเชพ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธเชฎเชพเช‚เชฅเซ€ เช…เชฎเชพเชฐเชพ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจ เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเซเช‚ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ /etc/gitlab/gitlab.rb เชฎเชพเช‚ เช…เชจเซเชฐเซ‚เชช เชฒเชพเช‡เชจ เชฌเชฆเชฒเซ€เชจเซ‡ เชธเชฐเซเชตเชฐเชจเซ‡ เชคเชฎเชพเชฐเซเช‚ URL เชธเซ‹เช‚เชชเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡:

external_url = 'http://gitlab.mydomain.ru'

เชชเซเชจเชƒเชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เช•เชฐเซ‹:

sudo gitlab-ctl reconfigure

เช…เชจเซ‡ เชคเซ‡ เชฎเซเชœเชฌ เชฎเชพเช‚ Grafana เชฎเชพเชŸเซ‡ เชฐเซ€เชกเชพเชฏเชฐเซ‡เช•เซเชŸ URI เชฌเชฆเชฒเซ‹

เชเชกเชฎเชฟเชจ เชตเชฟเชธเซเชคเชพเชฐ > เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ > เช—เชฟเชŸเชฒเซ‡เชฌ เช—เซเชฐเชพเชซเชจเชพ

gitlab.mydomain.ru/-/grafana/login/gitlab

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ SSO เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซเชฐเชฅเชฎ เชตเช–เชค เชฒเซ‹เช— เช‡เชจ เช•เชฐเชถเซ‹, เชคเซเชฏเชพเชฐเซ‡ Gitlab Grafana เชฒเซ‹เช—เซ€เชจเชจเซ‡ เช…เชงเชฟเช•เซƒเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เชฎเชพเช‚เช—เชถเซ‡.

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ

เช—เซเชฐเชพเชซเชจเชพเชฎเชพเช‚, เชฎเซเช–เซเชฏ เชธเซ‡เชตเชพเช“เชจเชพ เชคเซˆเชฏเชพเชฐ เชกเซ‡เชถเชฌเซ‹เชฐเซเชกเซเชธ เช—เซ‹เช เชตเซ‡เชฒเชพ เช›เซ‡ เช…เชจเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เช“เชฎเซเชจเชฟเชฌเชธ เชถเซเชฐเซ‡เชฃเซ€เชฎเชพเช‚ เช‰เชชเชฒเชฌเซเชง เช›เซ‡.

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?
เชกเซ‡เชถเชฌเซ‹เชฐเซเชก เชตเชฟเชนเช‚เช—เชพเชตเชฒเซ‹เช•เชจ

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?
เชธเชฐเซเชตเชฟเชธ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก

  • เชตเชฟเชนเช‚เช—เชพเชตเชฒเซ‹เช•เชจ - เชธเซ‡เชตเชพเช“, เช•เชคเชพเชฐ เช…เชจเซ‡ เชธเชฐเซเชตเชฐ เชธเช‚เชธเชพเชงเชจ เชตเชชเชฐเชพเชถเชจเซ€ เชธเซเชฅเชฟเชคเชฟ เชฆเชฐเซเชถเชพเชตเชคเซเช‚ เชตเชฟเชนเช‚เช—เชพเชตเชฒเซ‹เช•เชจ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก
  • Gitaly - เชธเซ‡เชตเชพ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช— เช•เซ‡ เชœเซ‡ Gitlab เชฐเชฟเชชเซ‹เชเซ€เชŸเชฐเซ€เชเชฎเชพเช‚ RPC เชเช•เซเชธเซ‡เชธ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡
  • NGINX VTS - เชตเชฟเชจเช‚เชคเซ€ เชฆเซ€เช  เชธเซ‡เชตเชพ เชŸเซเชฐเชพเชซเชฟเช• เช…เชจเซ‡ HTTP เช•เซ‹เชกเซเชธ เชชเชฐเชจเชพ เช†เช‚เช•เชกเชพ
  • PostgreSQL - PostgreSQL เชกเซ‡เชŸเชพเชฌเซ‡เช เชชเชฐ เช‰เชชเชฒเชฌเซเชงเชคเชพ เช…เชจเซ‡ เชฒเซ‹เชก เช…เช‚เช—เซ‡เชจเชพ เช†เช‚เช•เชกเชพ
  • เชชเซเชฐเชพเช‡เชซเซ‡เช•เซเชŸ - เช‰เชšเซเชš เช‰เชชเชฒเชฌเซเชงเชคเชพ เชชเซเชฐเชพเช‡เชซเซ‡เช•เซเชŸ เชธเชพเชฅเซ‡ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชฒเซ‹เชก เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช—
  • เชฐเซ‡เชฒเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ - เชฐเซ‡เชฒเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เชฎเชพเชŸเซ‡ เชตเชฟเชนเช‚เช—เชพเชตเชฒเซ‹เช•เชจ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก
  • เชฐเซ‡เชกเชฟเชธ - เชฐเซ‡เชกเชฟเชธ เชธเซ‡เชตเชพ เชชเชฐเชจเชพ เชญเชพเชฐเชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเชตเซเช‚
  • เชฐเชœเชฟเชธเซเชŸเซเชฐเซ€ - เช‡เชฎเซ‡เชœ เชฐเชœเชฟเชธเซเชŸเซเชฐเซ€ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช—
  • เชธเชฐเซเชตเชฟเชธ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ - เช—เชฟเชŸเชฒเซ‡เชฌ เชฆเซเชตเชพเชฐเชพ เชธเช‚เชธเชพเชงเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช—, เชธเซ‡เชตเชพเชจเซ€ เช‰เชชเชฒเชฌเซเชงเชคเชพ, RPC เชตเชฟเชจเช‚เชคเซ€เช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช…เชจเซ‡ เชญเซ‚เชฒเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพ เชฆเชฐเซเชถเชพเชตเชคเซ€ เชธเซ‡เชตเชพ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ.

เชเช•เซ€เช•เชฐเชฃ เชคเชฆเซเชฆเชจ เชตเซเชฏเชพเชชเช• เช›เซ‡ เช…เชจเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชชเชพเชธเซ‡ เชฌเซ‹เช•เซเชธเชจเซ€ เชฌเชนเชพเชฐ เชœ เชตเชฟเชเซเชฏเซเช…เชฒเชพเชˆเชเซเชก เช—เชฟเชŸเชฒเซ‡เชฌ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธเชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช›เซ‡.

เช—เชฟเชŸเชฒเซ‡เชฌเชฎเชพเช‚, เชกเซ‡เชถเชฌเซ‹เชฐเซเชกเซเชธเชจเซ‡ เชœเชพเชณเชตเชตเชพ เช…เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เช…เชฒเช— เชŸเซ€เชฎ เชœเชตเชพเชฌเชฆเชพเชฐ เช›เซ‡, เช…เชจเซ‡ เช—เชฟเชŸเชฒเซ‡เชฌเชจเชพ SRE เชเชจเซเชœเชฟเชจเชฟเชฏเชฐ เชฌเซ‡เชจ เช•เซ‹เชšเซ€เชจเชพ เชœเชฃเชพเชตเซเชฏเชพ เช…เชจเซเชธเชพเชฐ, เชกเชฟเชซเซ‹เชฒเซเชŸ เชธเซ‡เชŸเชฟเช‚เช—เซเชธ เช…เชจเซ‡ เชคเซˆเชฏเชพเชฐ เชกเซ‡เชถเชฌเซ‹เชฐเซเชกเซเชธ เชฎเซ‹เชŸเชพเชญเชพเช—เชจเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช›เซ‡.

เช…เชจเซ‡ เชนเชตเซ‡ เชฎเซเช–เซเชฏ เชตเชธเซเชคเซ: เชšเชพเชฒเซ‹ เชธเชพเชฅเซ‡ เชฎเชณเซ€เชจเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เชฌเชจเชพเชตเซ€เช

เช…เชฎเซ‡ เชธเชฎเช—เซเชฐ เชนเชฌเชฐ เชธเชฎเซเชฆเชพเชฏเชจเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธเชจเชพ เชจเชฟเชฐเซเชฎเชพเชฃเชฎเชพเช‚ เชญเชพเช— เชฒเซ‡เชตเชพ เชฎเชพเชŸเซ‡ เช†เชฎเช‚เชคเซเชฐเชฟเชค เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ€เช เช›เซ€เช. เชคเชฎเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชœเซ‹เชกเชพเชˆ เชถเช•เซ‹ เชคเซ‡ เชฎเชพเชŸเซ‡ เชคเซเชฐเชฃ เชตเชฟเช•เชฒเซเชชเซ‹ เช›เซ‡:

เช›เชฌเซ€ เชœเชพเชคเซ‡ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ‹ เช…เชจเซ‡ เชคเชฎเชพเชฐเชพ เชฌเซ‡เชฒเซ‡เชจเซเชธเชฎเชพเช‚ 3000 เชฐเซเชฌเซ‡เชฒเซเชธ เชฎเซ‡เชณเชตเซ‹

เชœเซ‹ เชคเชฎเซ‡ เชคเชฐเชค เชœ เชฏเซเชฆเซเชงเชฎเชพเช‚ เชญเชพเช— เชฒเซ‡เชตเชพ เชฎเชพเชŸเซ‡ เชคเซˆเชฏเชพเชฐ เช›เซ‹ เช…เชจเซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชœเซ‡ เช…เชญเชพเชต เช›เซ‡ เชคเซ‡เชตเซ€ เช›เชฌเซ€ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชคเซˆเชฏเชพเชฐ เช›เซ‹, เชคเซ‹ เช…เชฎเซ‡ เชคเชฎเชจเซ‡ เชคเชฎเชพเชฐเชพ เช†เช‚เชคเชฐเชฟเช• เชธเช‚เชคเซเชฒเชจเชฎเชพเช‚ 3000 เชฐเซเชฌเซ‡เชฒเซเชธ เช†เชชเซ€เชถเซเช‚ - เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชธเชฐเซเชตเชฐเซเชธ เชชเชฐ เช–เชฐเซเชš เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เชคเชฎเชพเชฐเซ€ เช›เชฌเซ€ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเซ€:

  1. เช…เชฎเชพเชฐเซ€ เชธเชพเชฅเซ‡ เชเช• เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹ เชธเชพเช‡เชŸ
  2. เชธเชฎเชฐเซเชฅเชจเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เชคเชฎเซ‡ เช›เชฌเซ€เช“ เชฌเชจเชพเชตเชตเชพ เช…เชจเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เช•เชฐเชตเชพ เชœเชˆ เชฐเชนเซเชฏเชพ เช›เซ‹
  3. เช…เชฎเซ‡ เชคเชฎเชจเซ‡ 3000 เชฐเซเชฌเซ‡เชฒเซเชธ เช•เซเชฐเซ‡เชกเชฟเชŸ เช•เชฐเซ€เชถเซเช‚ เช…เชจเซ‡ เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชฌเชจเชพเชตเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพเชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเซ€เชถเซเช‚
  4. เชธเซเชตเชšเซเช› เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎ เชธเชพเชฅเซ‡ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชธเชฐเซเชตเชฐเชจเซ‹ เช“เชฐเซเชกเชฐ เช†เชชเซ‹
  5. เช† VPS เชชเชฐ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชธเซ‡เชŸ เช•เชฐเซ‹
  6. เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชœเชฎเชพเชตเชŸ เชฎเชพเชŸเซ‡ เชธเซ‚เชšเชจเชพเช“ เช…เชฅเชตเชพ เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชฒเช–เซ‹
  7. เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชฟเชค เชธเชฐเซเชตเชฐ เชฎเชพเชŸเซ‡ เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชฌเชจเชพเชตเซ‹
  8. "เชธเชฐเซเชตเชฐ เชŸเซ‡เชฎเซเชชเชฒเซ‡เชŸ" เชกเซเชฐเซ‹เชช-เชกเชพเช‰เชจ เชธเซ‚เชšเชฟเชฎเชพเช‚ เช…เช—เชพเช‰ เชฌเชจเชพเชตเซ‡เชฒ เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชชเชธเช‚เชฆ เช•เชฐเซ€เชจเซ‡ เชจเชตเชพ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชธเชฐเซเชตเชฐเชจเซ‡ เช“เชฐเซเชกเชฐ เช•เชฐเซ‹
  9. เชธเชฐเซเชตเชฐเชจเซ€ เชธเชซเชณ เชฐเชšเชจเชพเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชชเช—เชฒเซเช‚ 6 เชชเชฐ เชชเซเชฐเชพเชชเซเชค เชธเชพเชฎเช—เซเชฐเซ€เชจเซ‡ เชคเช•เชจเซ€เช•เซ€ เชธเชชเซ‹เชฐเซเชŸ เชชเชฐ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเซ‹
  10. เชญเซ‚เชฒเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชคเชฎเซ‡ เช•เชพเชฐเชฃ เชฎเชพเชŸเซ‡ เชธเชฎเชฐเซเชฅเชจ เชธเชพเชฅเซ‡ เชคเชชเชพเชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชธเซ‡เชŸเช…เชชเชจเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชฟเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹

เชตเซเชฏเชตเชธเชพเชฏ เชฎเชพเชฒเชฟเช•เซ‹ เชฎเชพเชŸเซ‡: เชคเชฎเชพเชฐเซเช‚ เชธเซ‰เชซเซเชŸเชตเซ‡เชฐ เช‘เชซเชฐ เช•เชฐเซ‹

เชœเซ‹ เชคเชฎเซ‡ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชกเซ‡เชตเชฒเชชเชฐ เช›เซ‹ เช•เซ‡ เชœเซ‡ VPS เชชเชฐ เชœเชฎเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชฏ เช›เซ‡, เชคเซ‹ เช…เชฎเซ‡ เชคเชฎเชจเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธเชฎเชพเช‚ เชธเชพเชฎเซ‡เชฒ เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช. เช† เชฐเซ€เชคเซ‡ เช…เชฎเซ‡ เชคเชฎเชจเซ‡ เชจเชตเชพ เช—เซเชฐเชพเชนเช•เซ‹, เชŸเซเชฐเชพเชซเชฟเช• เช…เชจเซ‡ เชฆเซƒเชถเซเชฏเชคเชพ เชฒเชพเชตเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช. เช…เชฎเชจเซ‡ เชฒเช–เซ‹

เชซเช•เซเชค เชŸเชฟเชชเซเชชเชฃเซ€เช“เชฎเชพเช‚ เช…เชฎเชจเซ‡ เชเช• เช›เชฌเซ€ เชธเซ‚เชšเชตเซ‹

เชฒเช–เซ‹ เช•เซ‡ เชคเชฎเซ‡ เช•เชฏเชพ เชธเซ‰เชซเซเชŸเชตเซ‡เชฐ เชตเชกเซ‡ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจเซ‹เชจเซ‡ เชเช• เช•เซเชฒเชฟเช•เชฎเชพเช‚ เชœเชฎเชพเชตเชตเชพ เชธเช•เซเชทเชฎ เชฌเชจเชตเชพ เชฎเชพเช‚เช—เซ‹ เช›เซ‹?

เชคเชฎเซ‡ RUVDS เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธเชฎเชพเช‚ เชถเซเช‚ เชšเซ‚เช•เซ€ เช—เชฏเชพ เช›เซ‹?

เชฆเชฐเซ‡เช• เชธเซเชตเชพเชญเชฟเชฎเชพเชจเซ€ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เช•เช‚เชชเชจเซ€เช เชคเซ‡เชฎเชจเชพ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธเชฎเชพเช‚ เชถเซเช‚ เชถเชพเชฎเซ‡เชฒ เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เช…เชฎเซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸเชชเซเชฒเซ‡เชธ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: เช…เชฎเชจเซ‡ เช•เชนเซ‹ เช•เซ‡ เช•เซ‡เชŸเชฒเซเช‚ เชธเชพเชฐเซเช‚?

เชซเช•เซเชค เชจเซ‹เช‚เชงเชพเชฏเซ‡เชฒเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชœ เชธเชฐเซเชตเซ‡เชฎเชพเช‚ เชญเชพเช— เชฒเชˆ เชถเช•เซ‡ เช›เซ‡. เชธเชพเช‡เชจ เช‡เชจ เช•เชฐเซ‹, เชฎเชนเซ‡เชฐเชฌเชพเชจเซ€ เช•เชฐเซ€เชจเซ‡.

เชฌเชœเชพเชฐเชฎเชพเช‚ เช†เชชเชฃเซ‡ เช•เชˆ เช›เชฌเซ€เช“เชจเซ‡ เชชเชนเซ‡เชฒเชพ เชธเชพเชฎเซ‡เชฒ เช•เชฐเชตเซ€ เชœเซ‹เชˆเช?

  • 50,0%LEMP10

  • 15,0%Drupal3

  • 10,0%เชœเซเชฎเชฒเชพ2

  • 5,0%เชกเซ‹เช•เซเช•เซ1

  • 0,0%PacVim0

  • 0,0%เชฐเชจเช•เซเชฒเชพเช‰เชก0

  • 5,0%เช•เซ‹เชก-เชธเชฐเซเชตเชฐ1

  • 15,0%เช˜เซ‹เชธเซเชŸ 3

  • 5,0%WikiJs1

  • 0,0%เชชเซเชฐเชตเชšเชจ0

  • 0,0%Rstudio0

  • 5,0%OpenCart1

  • 35,0%Django7

  • 40,0%เชฒเชพเชฐเชพเชตเซ‡เชฒ8

  • 20,0%เชฐเซ‚เชฌเซ€ เช“เชจ เชฐเซ‡เชฒเซเชธ4

  • 55,0%NodeJs11

20 เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เช เชฎเชคเชฆเชพเชจ เช•เชฐเซเชฏเซเช‚. 12 เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฆเซ‚เชฐ เชฐเชนเซเชฏเชพ.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹