ืื!
ืืืึทื ื ืึธืืขื ืืื ืกืขืจืืื, ืืื ืึทืจืืขื ืืื ืึท ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ ืื ืืฉืขื ืืจ ืืื ืื ืึทืคึผื ืืึทื ืฉืึทืคึฟื ืคืื ืื tinkoff.ru ืคึผืืึทืืคืึธืจืืข.
ืืื ืืขื ืึทืจืืืงื ืืื ืืืขื ืจืขืื ืืืขืื ืื ืคืจืืืืขืืขื ืืืึธืก ืืื ืืืขืจ ืืึทื ืฉืึทืคึฟื ืคืืืกื ืืืขื ืคึผืจืืคึผืขืจืื ื ืืึทืืึทื ืกืขืจื ืืืืืจื ืืืืฃ
Nginx ืืื ืึท ืืืืืืคืื ืงืืืึธื ืึทื ืืื ืึทืงืืืืืื ืืขืืืขืืึธืคึผืื ื ืคึผืจืึทืงืกื ืกืขืจืืืขืจ. ืขืก ืคึฟืขืึดืงืืืื ืึท ืืจืืืก ื ืืืขืจ ืคืื ืืึทืืืฉืืื,
ืืืจ ืืืึธืื ืืื ืฆื ืืขื ืึท ืคืจืืฉ ืืืขืจืกืืข ืืื ืื ืคืืจืืื ืื ืืึทื ื ืคืื ืืึทืืืฉืืื, ืคืืืกื ืืืง ืืื ืืขืจ ืึท ืกืคึผืขืฆืืคืืฉ ืืื ืืงืก ืคืึทืจืฉืคึผืจืืืืื ื. ืืื ืืื ืืืขืจ ืคืึทื, ืืึธืก ืืขื ืขื ืืขื- ืืื ืจืคึผื-ืืืืืจื ืกืืกืืขืืขื. ืื ืึธืคึผืฆืืข ืืื ืงืึทื ืืืื ืขืจื ืืื ื ืืฉื ืงืึทื ืกืืืขืจื ืืื ืืขื ืึทืจืืืงื.
ืืืจ ืืืืื ืฆื ืืขืฉืืืื ื ืืืืฉื ืื ืคืึทื ืืงืฉืึทื ืึทืืืื ืคืื ืืื ืืืขืจ ืืึทืืึทื ืกืขืจื. ืืื ืืึธ ืื ืงืฉืื ืืืืื ืขืจืืืืึทื: ืืื ืฆื ืืขืจืืจืืืื ืืขื ืืฉืขืช ืกืคึผืขื ืืื ื ืืื ืืืืื ืืง ืจืขืกืืจืกื ืืื ืืขืืืขื? ืขืก ืืืึธืื ืืืื ืืคืืื ืืขืกืขืจ ืฆื ืฉืืขืื ืืขื ืคึผืจืึธืฆืขืก ืึทืืื ืึทื ืืืจ ืงืขื ืขื ืกืคึผืขืฆืืคืืฆืืจื ืึท ืขื ืืืขื ื ืืืขืจ ืคืื ืึทืจืืึทื ืฉืจืืึทื ืคึผืึทืจืึทืืขืืขืจืก ืืื ืืึทืงืืืขื ืึท ืึทืจืืึทืคืึทืงื ืืื ืื ืคืึธืจืขื ืคืื ืึท ืืขื / ืจืคึผื ืคึผืขืงื ืคึฟืึทืจ ืื ืืขืืขืื ืึทืก.
ืืื ืึท ืจืขืืืืืึทื, ืึท ื ืืืขืจ ืคืื ืคึผืจืึธืืืขืืก ืงืขื ืขื ืืืื ืคืืจืืืืืจื:
- ืขืก ืืขื ืขื ื ืื ืฉืืขื ืืืง ืคึผืึทืงืึทืืืฉืึทื ืืื ืื ืืขืฆืืข ืืืขืจืกืืข ืคืื โโNginx.
- ืขืก ืืขื ืขื ืงืืื ืคึผืึทืงืึทืืืฉืึทื ืืื ืื ืคืืจืืื ืื ืืึทืืืฉืืื.
- ืืึทื ืืืึทืื ืงืึทืืคึผืืืืื ื ืืื ืืืืขื ืึท ืคึผืขืงื ืืื ืฆืืื ืงืึทื ืกืืืื ื ืืื ืืึทืื ืจืืื ืืืืืึทืก.
- ืขืก ืืื ืงืืื ืืึทืฉืจืืึทืืื ื ืคืื ืืื ืืึธืก ืึธืืขืจ ืึทื Nginx ืืืึทืฉืคึผืื ืืื ืคืืจืืืืื.
ืฆื ืกืึธืืืืข ืื ืคึผืจืึธืืืขืืก, ืขืก ืืื ื ืืืืืง ืคึฟืึทืจ ืึท ืืขืฆืืึทื ืืืึธืก ืืืขื ื ืขืืขื ืึท ืืึทืฉืจืืึทืืื ื ืืื ืึท ืืขื ืืฉ-ืืืืขื ืขื ืคึฟืึธืจืืึทื ืืื ืึทืกืขืืืึทื ืึท Nginx ืคึผืขืงื ืืื ืื ื ืืืืืง ืคืึทื ืืงืฉืึทื ืึทืืืื ืืืืืจื ืืืืฃ ืขืก.
ื ืื ืืขืคึฟืื ืขื ืึท ืคึผืึทืกืืง ืึธืคึผืฆืืข ืคึฟืึทืจ ืืื ืื ืืืืฃ ืื ืืืึทืกืื ืึทืก ืคืื Github, ืืืจ ืืึทืฉืืึธืกื ืฆื ืฉืึทืคึฟื ืืื ืืืขืจ ืืืืืขื ืข ืืขืฆืืึทื -
ืกืคึผืขืกืึทืคืึทืงืืืฉืึทื ื
ืืื ืืื ืืืขืจ ืืขืฆืืึทื, ืืืจ ืืขืืืืื ืฆื ืฉืึทืคึฟื ืึท ืืึทืฉืจืืึทืืื ื ืคืื ืื ืืึทืฉืจืืึทืืื ื ืืื ืื ืคืึธืจืขื ืคืื ืงืึธื, ืืืึธืก ืงืขื ืขื ืืืื ืฉืืขืื ืืื ืึท ืืื ืจืืคึผืึทืืึทืืึธืจื. ืฆื ืืึธื ืืึธืก, ืืืจ ืืืืกืืขืจืืืืืื ืืขื ืคึฟืึธืจืืึทื ืืืึธืก ืืื ืืึทืงืึทื ื ืคึฟืึทืจ ืึทืืึท ืืื ืื - ืืึทืื. ืกืคึผืขืกืืคืืงืึทืืืึธื ืืืึทืฉืคึผืื:
nginx_version: 1.14.1
output_package: deb
modules:
- module:
name: nginx-auth-ldap
git_url: https://github.com/kvspb/nginx-auth-ldap.git
git_branch: master
dependencies:
- libldap2-dev
- module:
name: ngx_http_substitutions_filter_module
git_url: https://github.com/yaoweibin/ngx_http_substitutions_filter_module.git
- module:
name: headers-more-nginx-module
web_url: https://github.com/openresty/headers-more-nginx-module/archive/v0.261.zip
- module:
name: nginx-module-vts
git_url: https://github.com/vozlt/nginx-module-vts.git
git_tag: v0.1.18
- module:
name: ngx_devel_kit
git_url: https://github.com/simplresty/ngx_devel_kit.git
git_tag: v0.3.0
- module:
name: ngx_cache_purge
git_url: https://github.com/FRiCKLE/ngx_cache_purge.git
- module:
name: ngx_http_dyups_module
git_url: https://github.com/yzprofile/ngx_http_dyups_module.git
- module:
name: nginx-brotli
git_url: https://github.com/eustas/ngx_brotli.git
git_tag: v0.1.2
- module:
name: nginx_upstream_check_module
git_url: https://github.com/yaoweibin/nginx_upstream_check_module.git
- module:
name: njs
git_url: https://github.com/nginx/njs.git
git_tag: 0.2.5
config_folder_path: nginx
ืืึธ ืืืจ ืึธื ืืืืึทืื ืึทื ืืืจ ืืืืื ืฆื ืืขื ืึท ืืขื ืคึผืขืงื ืืื Nginx ืืืขืจืกืืข 1.14.2 ืืื ืื ืคืืจืืื ืื ืืึทื ื ืคืื ืืึทืืืฉืืื. ืืขืจ ืึธืคึผืืืืืื ื ืืื ืืึทืืืฉืืื ืืื ืึทืคึผืฉืึทื ืึทื. ืคึฟืึทืจ ืืขืืขืจ ืคืื ืืื ืืืจ ืงืขื ืขื ืฉืืขืื:
- ื ืึธืืขื.
- ืึทืืจืขืก ืืื ืืืจ ืงืขื ืขื ืืึทืงืืืขื ืขืก:
- ืืื ืจืืคึผืึทืืึทืืึธืจื. ืืืจ ืงืขื ืขื ืืืื ืกืคึผืขืฆืืคืืฆืืจื ืึท ืฆืืืืึทื ืึธืืขืจ ืงืืืืื.
- ืึทืจืืฉืืืืข ืืืขื ืืื ืง.
- ืืืงืืืข ืืื ืง ืฆืื ืืจืืืื.
ืขืืืขืืข ืืึทืืืฉืืื ืืึทืจืคื ื ืึธื ืืืคึผืขื ืืึทื ืกืื ืฆื ืืืื ืืื ืกืืึทืืืจื, ืืืฉื nginx-auth-ldap ืจืืงืืืืืขืจื libldap2-dev ืืื ืกืืึทืืืจื. ื ืืืืืง ืืืคึผืขื ืืึทื ืกืื ืงืขื ืขื ืืืื ืืืื ืกืคึผืขืกืืคืืขื ืืืขื ืืืกืงืจืืืืื ื ืื ืืึธืืืืข.
ืื ืกืืืืืืข
ืืื ืืื ืืืขืจ ืืขืฆืืึทื ืืืจ ืงืขื ืขื ืืขืฉืืืื ื ืืึทืงืืืขื ืึท ืกืืืืืืข ืืื ืืื ืกืืึทืืืจื ืืืืืืึทืืื ืคึฟืึทืจ ืืึทืืืื ื, ืคึผืขืงื ืคึฟืึทืจืืึทืืืื ื ืืื ืื ืืขืจืข ืึทืืืืืืขืจื ืืืืืืืืืจื. ื ืืึธืงืงืขืจ ืงืึทื ืืืื ืขืจ ืืื ืึทืืฅ ืืืจ ืืึทืจืคึฟื ืืื ืืืขืึทื ืืึธ (ืื ืจืืคึผืึทืืึทืืึธืจื ืืื ืฉืืื ืขืืืขืืข ืืืืฉืคืืื ืคืื ืืึธืงืงืขืจ ืืขืงืขืก ืคึฟืึทืจ ืืืื ืื ืืื ืกืขื ืืึธืก).
ื ืึธื ืื ืกืคึผืขืกืึทืคืึทืงืืืฉืึทื ืืื ืฆืืขื ืึทืจืืืฃ ืืื ืื ืกืืืืืืข ืืื ืฆืืืขืืจืืื, ืืืจ ืงืึทืืขืจ ืืื ืืืขืจ ืืืืืขืจ, ืืืืื ืคืจืืขืจ ืืื ืกืืึทืืืจื ืืืึทื ืืืคึผืขื ืืึทื ืกืื:
pip3 install -r requirements.txt
./main.py build -f [ะบะพะฝัะธะณ_ัะฐะนะป].yaml -r [ะฝะพะผะตั_ัะตะฒะธะทะธะธ]
ืื ืจืขืืืืืืข ื ืืืขืจ ืืึธ ืืื ืึทืคึผืฉืึทื ืึทื ืืื ืืื ืืขื ืืฆื ืคึฟืึทืจ ืืืขืจืกืืขืก ืคืื ืึทืกืขืืืืื. ืขืก ืืื ืืขืฉืจืืื ืืื ืื ืืขืืึท ืืื ืคึฟืึธืจืืึทืฆืืข ืคืื โโืืขื ืคึผืขืงื, ืืืึธืก ืืืื ืขืก ืืจืื ื ืฆื ืืขืจืืืึทื ืืืงื ืืืืฃ ืกืขืจืืืขืจืก.
ืคึฟืื ืื ืืึธืืก ืืืจ ืงืขื ืขื ืืึธื ืืืึธืจ ืืืึธืก ืืื ืืขืฉืขืขื ืืฉ. ืืึธ ืืื ืึท ืืืืฉืคึผืื ืคืื ืื ืืืืคึผื ืคืื ืงืื:
builder - INFO - Parse yaml file: example.config.yaml
builder - INFO - Download scripts for build deb package
builder - INFO - Downloading nginx src...
builder - INFO - --> http://nginx.org/download/nginx-1.14.1.tar.gz
builder - INFO - Downloading 3d-party modules...
builder - INFO - Module nginx-auth-ldap will download by branch
builder - INFO - -- Done: nginx-auth-ldap
builder - INFO - -- Done: ngx_http_substitutions_filter_module
builder - INFO - Module headers-more-nginx-module will downloading
builder - INFO - Module nginx-module-vts will download by tag
builder - INFO - -- Done: nginx-module-vts
builder - INFO - Module ngx_devel_kit will download by tag
builder - INFO - -- Done: ngx_devel_kit
builder - INFO - -- Done: ngx_cache_purge
builder - INFO - -- Done: ngx_http_dyups_module
builder - INFO - Downloading dependencies
builder - INFO - Building .deb package
builder - INFO - Running 'dh_make'...
builder - INFO - Running 'dpkg-buildpackage'...
dpkg-deb: building package 'nginx' in '../nginx_1.14.1-1_amd64.deb'.
ืึทืืื, ืืื ืืืืื ืึท ืคึผืึธืจ ืคืื ืงืึทืืึทื ืื, ืืืจ ืืึทืื ืื ืกืืืืืืข ืืื ืื ืคืืจืืื ืื Nginx ืคึฟืึทืจืืึทืืืื ื, ืืื ืืขืจ ืคึผืขืงื ืืื ืืจืืืก ืืื ืืขืจ ืืืขืืืืืึทืืขืจ ืคืื ืืื ืื ืฉืจืืคื ืืื ืืึธื ืืฉื.
ืขืืืขืืืื ื
ืืืจ ืงืขื ืขื ืืืื ืืืกืฉืืืืขื ืืื ืืืขืจ ืืขืฆืืึทื ืืื ืกื / ืกื ืคึผืจืึทืกืขืกืึทื. ืงืืื ืคืื ืื ืคืืืข ืกื-ืกืืกืืขืืก ืืืึธืก ืืขื ืขื ืืืฆื ืืืืืกืืื ื ืงืขื ืขื ืืขืืคื ืืื ืืขื, ืืืฉื
ืืื ืึท ืจืขืืืืืึทื, ืืขืืขืจ ืืึธื ืืืขื ืื ืกืคึผืขืกืึทืคืึทืงืืืฉืึทื ื ืขื ืืขืจืื ืืขื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื, ืื ืืืืขื ืคืื ืื ืึทืจืืึทืคืึทืงื ืืื ืืืืืึธืืึทืืืฉ ืืึธื ืืฉื. ืื ืจืขืืืืืืข ื ืืืขืจ ืืื ืืื ืืงื ืฆื ืื ืืืืขื ืงืึทืืขืจ ืืึธืืืึทื ืง.
ืืื ืึท ืืืกื ืืขืจ ืฆืืื, ืืืจ ืงืขื ืขื ืงืึทื ืคืืืืขืจ ืื ืึทืจืืึทืคืึทืงื ืฆื ืืืื ืืขืฉืืงื ืฆื ืืืื ืืืืข ืคึผืขืงื ืจืืคึผืึทืืึทืืึธืจื, Nexus, Artifactory, ืืื ืึทืืื ืืืืฃ.
ืึทื ื ืึธื ืืืึทืืข ืืื ืึทื ืื ืืึทืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืขืงืข ืงืขื ืขื ืืืื ืงืึธื ื ืขืงืืขื ืฆื Ansible ืึธืืขืจ ืื ืื ืืขืจ ืึธืืึทืืึทืืืง ืงืึทื ืคืืืืขืจืืืฉืึทื ืกืืกืืขื, ืืื ืคึฟืื ืืึธืจื ืืืจ ืงืขื ืขื ื ืขืืขื ืื ืืืขืจืกืืข ื ืืืขืจ ืืื ืคึผืขืงื ืืืคึผ ืืืึธืก ืืืจ ืืืืื ืฆื ืฆืขืืืืงืืขื.
ืืืึธืก ืก ืืืืึทืืขืจ
ืืขืจ ืคืจืืืขืงื ืืื ื ืื ื ืืฉื ืคืืจืขื ืืืงื. ืืึธ ืืื ืืืึธืก ืืืจ ืึทืจืืขืื ืืืืฃ ืืืฆื:
- ืืืจ ืืงืกืคึผืึทื ื ืื ืืขืืืขืืงืืื ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื, ืึธืืขืจ ืืื ืืขืจ ืืขืืืืงืขืจ ืฆืืึทื ืืึทืืื ืขืก ืืื ืคึผืฉืื ืืื ืืขืืืขื. ืืืจ ืืึธื ื ืืฉื ืืืขืื ืฆื ืืขืคืื ืืจื ืึท ืืืืื ื ืคึผืึทืจืึทืืขืืขืจืก ืืืื ืืืจ ื ืึธืจ ืืึทืจืคึฟื ืฆืืืื, ืืื ืื ืื ืืื ืคืืฅ ืืืจื ืคืขืืืงืืึทื. ืืึธืก ืืืื ืืึทืืืื ื ืคืืึทืืก (ืืืฆื ืืืจ ืงืขื ืขื ืืืืฉื ืืื ืืื ืื ืื ืขืจืืขื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืขืงืข src/config.py), ืื ืกืืึทืืืจืื ื ืืจื ืืื ืงืึทืืขืจ ืืึทื ืืฆืขืจ.
- ืืืจ ืืืืื ืึธืคึผืฆืืขืก ืคึฟืึทืจ ืืืืืึธืืึทืืืฉ ืฉืืงื ืึท ืคึผืขืงื ืฆื ืคืึทืจืฉืืื ืึทืจืืึทืคืึทืงื ืจืืคึผืึทืืึทืืึธืจืื.
- ืืืกืคืืจื ืึท ืื ืื ืืึทืคึฟืขื ืืืขื ืืึธืืืื ื ืึท ืืึธืืืืข (ืืืฉื, ืฆื ื ืืฆื
github.com/nginx-modules/nginx_upstream_check_module ืืืจ ืืืื ืขืจืฉืืขืจ ืฆืืืืืื ืึท ืืึทืืข ืคืื โโืึท ืกืคึผืขืฆืืคืืฉ ืืืขืจืกืืข) - ืึทืืื ื ืืขืกืฅ:
- ืืขืจ ืคึผืขืงื ืืื ืืื ืกืืึทืืืจื ืจืืืืืง.
- Nginx ืืื ืื ืคืืจืืื ืื ืืืขืจืกืืข ืืื ืืื ืืขืืืื ืืื ืื ืคืืจืืื ืื ืคืืึทืืก ืืื ืืึทืืืฉืืื.
- ืื ื ืืืืืง ืคึผืึทืืก, ืึทืงืึทืื ืฅ, ืืื ืึทืืื ืืืืฃ ืืขื ืขื ืืืฉืืคื.
ืึธืืขืจ ืืืจ ืงืขื ืขื ื ืืฆื ืืขื ืืขืฆืืึทื ืืืฆื, ืืื ืืืื ืคึฟืึธืจืฉืืึธืื ืืืคึผืจืืืืืึทื ืฅ -
ืืงืืจ: www.habr.com