ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅!
ΠΠ΅Π½Ρ Π·ΠΎΠ²ΡΡ Π‘Π΅ΡΠ³Π΅ΠΉ, ΡΠ°Π±ΠΎΡΡ ΠΊΠ°ΡΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅Π½ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ Π² Π΅ΠΊΠΈΠΏΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° API Π½Π° tinkoff.ru.
Π ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΠ΅ ΡΠ°Π·ΠΊΠ°ΠΆΠ° Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅, Ρ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ° Π½Π°ΡΠΈΡΡ Π΅ΠΊΠΈΠΏ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ°ΡΠ° Π½Π° Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°ΡΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ°Π·ΠΊΠ°ΠΆΠ° Π·Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°, ΠΊΠΎΠΉΡΠΎ Π½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π° Π΄Π° ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π΅ΠΌ Π³ΠΎΠ»ΡΠΌΠ° ΡΠ°ΡΡ ΠΎΡ ΡΡΡ .
Nginx Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅Π½ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°Ρ ΡΠ΅ ΠΏΡΠΎΠΊΡΠΈ-ΡΡΡΠ²ΡΡ. Π’ΠΎΠΉ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ Π³ΠΎΠ»ΡΠΌΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ΄ΡΠ»ΠΈ, . ΠΡΠ΅ΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°Π»Π°Π³Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°ΡΠ° ΠΈ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Nginx (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° http/2 ΠΈ ΠΏΡΠΎΠΊΡΠΈΡΠ°Π½Π΅ Π½Π° grpc) ΠΈ Π½Π°Π±ΠΎΡΠ° ΠΎΡ ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅.
ΠΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ Π½ΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΡΠ°Π±ΠΎΡΠ΅ΡΠ° ΠΏΠΎΠ΄ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Π½Π° Linux. Π Π½Π°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉ ΡΠΎΠ²Π° ΡΠ° Π΄Π΅Π± ΠΈ rpm-Π±Π°Π·ΠΈΡΠ°Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΠ°ΡΠΈΠ°Π½ΡΡΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ Π² ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ Π½Π΅ ΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π°.
ΠΡΠΊΠ°ΠΌΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΡΠΌΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° Π½Π°ΡΠΈΡΠ΅ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°ΡΠΈ. Π ΡΡΠΊ Π²Π΅Π΄Π½Π°Π³Π° Π²ΡΠ·Π½ΠΈΠΊΠ²Π° Π²ΡΠΏΡΠΎΡΡΡ β ΠΊΠ°ΠΊ Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π΅ΠΌ ΡΠΎΠ²Π°, Π²Π»ΠΎΠΆΠ΅ΠΉΠΊΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΎ ΡΠ΅ΡΡΡΡΠΈ? Π ΠΎΡΠ΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ Π΅ Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΡΠΎΡΠ΅Ρ, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΠΌ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π±ΡΠΎΠΉ Π²Ρ ΠΎΠ΄Π½ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ, Π° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΠΌ Π°ΡΡΠ΅ΡΠ°ΠΊΡ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° deb/rpm ΠΏΠ°ΠΊΠ΅Ρ Π·Π° Π½ΡΠΆΠ½Π°ΡΠ° ΠΠ‘.
Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΡΠΎΡΠΌΡΠ»ΠΈΡΠ°ΠΌΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°:
- ΠΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΡΡ ΡΠ²Π΅ΠΆΠ° Π²Π΅ΡΡΠΈΡ Π½Π° Nginx.
- ΠΡΠΌΠ° ΠΏΠ°ΠΊΠ΅ΡΠΈ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
- ΠΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° ΠΈ ΡΠ³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΡΡΠ½ΠΎ ΠΎΡΠ½Π΅ΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π΅ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΡΠΎΡΠΈΡΠ΅Π»Π½ΠΎ.
- ΠΡΠΌΠ° ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Π΅ ΡΠ³Π»ΠΎΠ±Π΅Π½ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈΡ ΠΈΠ½ΡΡΠ°Π½Ρ Π½Π° Nginx.
ΠΠ° Π΄Π° ΡΠ΅ΡΠΈΠΌ ΡΠ΅Π·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΡΠ΅ Π½Π°Π»Π°Π³Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΊΠΎΠΉΡΠΎ Π΄Π° ΠΏΡΠΈΠ΅ΠΌΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π²ΡΠ² ΡΠ΄ΠΎΠ±Π΅Π½ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ ΡΠΎΡΠΌΠ°Ρ ΠΈ Π΄Π° ΡΠ³Π»ΠΎΠ±ΡΠ²Π° ΠΏΠ°ΠΊΠ΅Ρ Nginx Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ.
ΠΠ΅ Π½Π°ΠΌΠΈΡΠ°ΠΉΠΊΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Π·Π° Π½Π°Ρ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°ΡΠ° Π½Π° GitHub, ΡΠ΅ΡΠΈΡ ΠΌΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ Π½Π°ΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ - .
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ
Π Π½Π°ΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΈΡΠΊΠ°Ρ ΠΌΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΈ Π² Git Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅. ΠΠ° ΡΠ΅Π»ΡΠ° ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΏΠΎΠ·Π½Π°ΡΠΈΡ Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π΅ΡΠ° ΡΠΎΡΠΌΠ°Ρ - yaml. ΠΡΠΈΠΌΠ΅Ρ Π·Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ:
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
Π’ΡΠΊ ΠΏΠΎΡΠΎΡΠ²Π°ΠΌΠ΅, ΡΠ΅ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ deb-ΠΏΠ°ΠΊΠ΅Ρ Ρ Π²Π΅ΡΡΠΈΡ Nginx 1.14.2 Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ. Π‘Π΅ΠΊΡΠΈΡΡΠ° Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅ Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»Π½Π°. ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΡΡΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΠΌ:
- ΠΠΌΠ΅.
- ΠΠ΄ΡΠ΅Ρ, ΠΎΡΠΊΡΠ΄Π΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½:
- Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠΎΠΆΠ΅ ΡΡΡΠΎ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ ΠΊΠ»ΠΎΠ½ ΠΈΠ»ΠΈ ΡΠ°Π³.
- Π£Π΅Π± Π»ΠΈΠ½ΠΊ ΠΊΡΠΌ Π°ΡΡ ΠΈΠ²Π°.
- ΠΠΎΠΊΠ°Π»Π΅Π½ Π»ΠΈΠ½ΠΊ ΠΊΡΠΌ Π°ΡΡ ΠΈΠ²Π°.
ΠΡΠΊΠΎΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° nginx-auth-ldap Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ libldap2-dev. ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΡΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ ΠΏΡΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΌΠΎΠ΄ΡΠ»Π°.
ΠΠΊΠΎΠ»Π½Π° ΡΡΠ΅Π΄Π°
Π‘ Π½Π°ΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΡΠ΅Π΄Π° Ρ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ ΡΡΠΈΠ»ΠΈΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅, ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈ Π΄ΡΡΠ³ΠΎ ΠΏΠΎΠΌΠΎΡΠ½ΠΎ ΠΠ. Π’ΡΠΊ ΠΏΠ΅ΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠΆΠ΄Π° docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Ρ Π²ΡΠΈΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ (Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π²Π΅ΡΠ΅ ΠΈΠΌΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π·Π° docker ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° ubuntu ΠΈ centos).
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° Π΅ ΡΡΡΡΠ°Π²Π΅Π½Π° ΠΈ ΡΡΠ΅Π΄Π°ΡΠ° Π΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½Π°, ΡΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠΈΡ ΡΠ±ΠΎΡΡΠΈΠΊ, ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΌΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ ΠΌΡ:
pip3 install -r requirements.txt
./main.py build -f [ΠΊΠΎΠ½ΡΠΈΠ³_ΡΠ°ΠΉΠ»].yaml -r [Π½ΠΎΠΌΠ΅Ρ_ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ]
ΠΠΎΠΌΠ΅ΡΡΡ Π½Π° ΡΠ΅Π²ΠΈΠ·ΠΈΡΡΠ° ΡΡΠΊ Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»Π΅Π½ ΠΈ ΡΠ»ΡΠΆΠΈ Π·Π° Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ±ΠΎΡΠΊΠΈΡΠ΅. Π’ΠΎΠΉ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π° Π² ΠΌΠ΅ΡΠ°ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π° Π½Π° ΡΡΡΠ²ΡΡΠΈΡΠ΅.
Π§ΡΠ΅Π· Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ»Π΅Π΄ΠΈΡΠ΅ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π°. ΠΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΠΈ:
builder - INFO - ΠΠ½Π°Π»ΠΈΠ· yaml ΡΠ°ΠΉΠ»Π°: example.config.yaml
builder - INFO - Π‘ΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ deb ΠΏΠ°ΠΊΠ΅ΡΠ°
builder - INFO - Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ nginx src...
builder - INFO - --> http://nginx.org/download/nginx-1.14.1.tar.gz
builder - INFO - Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ...
builder - INFO - ΠΠΎΠ΄ΡΠ»Ρ nginx-auth-ldap Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°ΡΠ°Π½ ΠΏΠΎ Π²Π΅ΡΠΊΠ΅
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: nginx-auth-ldap
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: ngx_http_substitutions_filter_module
builder - INFO - ΠΠΎΠ΄ΡΠ»Ρ headers-more-nginx-module Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡΡΡ
builder - INFO - ΠΠΎΠ΄ΡΠ»Ρ nginx-module-vts Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°ΡΠ°Π½ ΠΏΠΎ ΡΠ΅Π³Ρ
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: nginx-module-vts
builder - INFO - ΠΠΎΠ΄ΡΠ»Ρ ngx_devel_kit Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°ΡΠ°Π½ ΠΏΠΎ ΡΠ΅Π³Ρ
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: ngx_devel_kit
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: ngx_cache_purge
builder - INFO - -- ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΎ: ngx_http_dyups_module
builder - INFO - Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
builder - INFO - Π‘Π±ΠΎΡΠΊΠ° .deb ΠΏΠ°ΠΊΠ΅ΡΠ°
builder - INFO - ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ 'dh_make'...
builder - INFO - ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ 'dpkg-buildpackage'...
dpkg-deb: ΡΠ±ΠΎΡΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠ° 'nginx' Π² '..\/nginx_1.14.1-1_amd64.deb'.
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π½ΡΠΆΠ½ΡΡ ΡΠ±ΠΎΡΠΊΡ Nginx, Π° ΠΏΠ°ΠΊΠ΅Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΎΡΠΊΡΠ΄Π° Π·Π°ΠΏΡΡΠ΅Π½ ΡΠΊΡΠΈΠΏΡ.
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ
Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π² ΠΏΡΠΎΡΠ΅ΡΡΡ CI/CD. Π ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π»ΡΠ±Π°Ρ ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ CI-ΡΠΈΡΡΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ»ΠΈ .
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠ° Π°ΡΡΠ΅ΡΠ°ΠΊΡΠ°. ΠΠΎΠΌΠ΅Ρ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠΎΠ² Π±ΠΈΠ»Π΄Π°.
ΠΠΎΡΡΠ°ΡΠΈΠ² Π΅ΡΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠ° Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Nexus, Artifactory ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠ»ΡΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ yaml-ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π² Ansible ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΡΡΡΠ΄Π° Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΡΠΈΠΏ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π·Π°Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ.
ΠΠ°ΠΊΠ²ΠΎ ΡΠ»Π΅Π΄Π²Π°
ΠΡΠΎΠ΅ΠΊΡ Π΅ΡΠ΅ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½. ΠΠΎΡ Π½Π°Π΄ ΡΠ΅ΠΌ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ ΡΠ΅ΠΉΡΠ°Ρ:
- Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠΌΠΈ. ΠΠ΅ Ρ ΠΎΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΡΡΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅Π³ΠΎ Π΄Π²Π°, Π° ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. Π ΡΡΠΎΠΌΡ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΠ»Π°Π³ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ (ΡΠ΅ΠΉΡΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ src/config.py), ΠΏΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°.
- ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π²Π°ΡΠΈΠ°Π½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ².
- ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΏΠ°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ)
- ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΎΠ²:
- ΠΠ°ΠΊΠ΅Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ.
- Nginx ΠΈΠΌΠ΅Π΅Ρ Π½ΡΠΆΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΈ ΡΠΎΠ±ΡΠ°Π½ Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΌΠΈ ΡΠ»Π°Π³Π°ΠΌΠΈ ΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ.
- Π‘ΠΎΠ·Π΄Π°ΡΡΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΡΡΠΈ, ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΎΠ·ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΎΡΠ΅ ΡΠ΅Π³Π°, Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ β ΠΠΎΠ±ΡΠ΅ Π΄ΠΎΡΠ»ΠΈ!
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
