Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes

ΠŸΡ€ΠΈΠΌ. ΠΏΡ€Π΅Π².: ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½Π°Ρ‚Π° статия Π΅ написана ΠΎΡ‚ Josh Rosso – Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ ΠΎΡ‚ VMware, Ρ€Π°Π±ΠΎΡ‚ΠΈΠ» Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ CoreOS ΠΈ Heptio, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΅ ΡΡŠΠ°Π²Ρ‚ΠΎΡ€ Π½Π° Kubernetes alb-ingress-controller. ΠΠ²Ρ‚ΠΎΡ€ΡŠΡ‚ сподСля ΠΌΠ°Π»ΠΊΠ° Ρ€Π΅Ρ†Π΅ΠΏΡ‚Π°, която ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π° Π·Π° β€žΡΡ‚Π°Ρ€ΠΎΠΌΠΎΠ΄Π½ΠΈΡ‚Π΅β€œ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈ ΠΏΠΎ Сксплоатация, ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‰ΠΈ vim Π΄ΠΎΡ€ΠΈ Π² Π΅ΠΏΠΎΡ…Π°Ρ‚Π° Π½Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΈΡ‚Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.

Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes

ΠŸΠΈΡˆΠ΅Ρ‚Π΅ YAML манифСсти Π·Π° Kubernetes във vim? ΠŸΡ€Π΅ΠΊΠ°Ρ€Π°Ρ…Ρ‚Π΅ Π±Π΅Π·Π±Ρ€ΠΎΠΉ часовС, ΠΎΠΏΠΈΡ‚Π²Π°ΠΉΠΊΠΈ сС Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ къдС Π² Ρ‚Π°Π·ΠΈ спСцификация трябва Π΄Π° Π΅ слСдвото ΠΏΠΎΠ»Π΅? А ΠΌΠΎΠΆΠ΅ Π±ΠΈ Ρ‰Π΅ сС Ρ€Π°Π΄Π²Π°Ρ‚Π΅ Π½Π° Π±ΡŠΡ€Π·ΠΎ напомнянС Π·Π° Ρ€Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° args ΠΈ command? Π•ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ новости! Vim Π»Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊ yaml-language-server, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ допълванС, Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ удобства. Π’ статията Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊ Π΄Π° настроитС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π½Π° Сзиковия ΡΡŠΡ€Π²ΡŠΡ€.

(ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½Π°Ρ‚Π° статия ΡΡŠΡ‰ΠΎ ΠΈΠΌΠ° Π²ΠΈΠ΄Π΅ΠΎ, Π² ΠΊΠΎΠ΅Ρ‚ΠΎ Π°Π²Ρ‚ΠΎΡ€ΡŠΡ‚ Ρ€Π°Π·ΠΊΠ°Π·Π²Π° ΠΈ дСмонстрира ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.)

Езиковият ΡΡŠΡ€Π²ΡŠΡ€

Π•Π·ΠΈΠΊΠΎΠ²ΠΈΡ‚Π΅ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ (language servers) прСдоставят информация Π·Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈΡ‚Π΅ Π΅Π·ΠΈΡ†ΠΈ Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚Π΅ ΠΈ IDE, ΠΊΠ°Ρ‚ΠΎ взаимодСйстват ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си ΠΏΠΎ спСциалСн ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» – Language Server Protocol (LSP). Π’ΠΎΠ²Π° Π΅ чудСсСн ΠΏΠΎΠ΄Ρ…ΠΎΠ΄: Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ позволява Π΅Π΄Π½Π° рСализация Π΄Π° прСдоставя Π΄Π°Π½Π½ΠΈ Π½Π° мноТСство Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΈ/IDE. Аз Π²Π΅Ρ‡Π΅ писах Π·Π° gopls – Π΅Π·ΠΈΠΊΠΎΠ² ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° Golang – ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² vim. ДСйствията Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ допълванС Π² YAML Π·Π° Kubernetes са Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΈ.

Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes

Π—Π° Π΄Π° Π·Π°Ρ€Π°Π±ΠΎΡ‚ΠΈ vim ΠΏΠΎ описания Π½Π°Ρ‡ΠΈΠ½, Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° инсталиратС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π½Π° Сзиковия ΡΡŠΡ€Π²ΡŠΡ€. Π”Π²Π° извСстни Π½Π°Ρ‡ΠΈΠ½Π°, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ·Π½Π°Π²Π°ΠΌ, са LanguageClient-neovim ΠΈ coc.vim. Π’ статията Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌ coc.vim – Ρ‚ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-популярният плъгин Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ инсталиратС Ρ‡Ρ€Π΅Π· vim-plug:

" Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ release branch (ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ)
Plug 'neoclide/coc.nvim', {'branch': 'release'}

" Или ΠΈΠ·Π³Ρ€Π°Π΄Π΅Ρ‚Π΅ ΠΎΡ‚ изходния ΠΊΠΎΠ΄, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ yarn: https://yarnpkg.com
Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}

Π—Π° стартиранС coc (ΠΈ, ΠΏΠΎ Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½, ΡΡŠΡ€Π²Π΅Ρ€Π° Π½Π° yaml-language-server) Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ инсталиран node.js:

curl -sL install-node.now.sh/lts | bash

ΠšΠΎΠ³Π°Ρ‚ΠΎ coc.vim настроСн, инсталирайтС ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎΡ‚ΠΎ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ coc-yaml ΠΎΡ‚ vim:

:CocInstall coc-yaml

Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes

Накрая, вСроятно Ρ‰Π΅ искатС Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ с конфигурацията Π½Π° coc-vim, прСдставСна ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. По-спСциално, тя Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° комбинацията +ΠΏΡ€ΠΎΠ±Π΅Π» Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ допълванС.

Настройка Π½Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° yaml-language-server

Π—Π° Π΄Π° coc ΠΌΠΎΠΆΠ΅ Π΄Π° сС възползва ΠΎΡ‚ yaml-language-server, трябва Π΄Π° Π³ΠΎ ΠΏΠΎΠΌΠΎΠ»ΠΈΡ‚Π΅ Π΄Π° Π·Π°Ρ€Π΅Π΄ΠΈ схСмата ΠΎΡ‚ Kubernetes ΠΏΡ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° YAML Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. Π’ΠΎΠ²Π° сС ΠΏΡ€Π°Π²ΠΈ Ρ‡Ρ€Π΅Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° coc-config:

:CocConfig

Π’ конфигурацията Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ kubernetes Π·Π° всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ yaml. Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ Π΅Π·ΠΈΠΊΠΎΠ² ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° golang, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ моята ΠΎΠ±Ρ‰Π° конфигурация ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°ΠΊΠ°:

{
  "languageserver": {
      "golang": {
        "command": "gopls",
        "rootPatterns": ["go.mod"],
        "filetypes": ["go"]
      }
  },

  "yaml.schemas": {
      "kubernetes": "/*.yaml"
  }
}

kubernetes β€” Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½ΠΎ ΠΏΠΎΠ»Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° Сзиковия ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° нСобходимостта Π΄Π° Π·Π°Ρ€Π΅Π΄ΠΈ схСмата Π½Π° Kubernetes ΠΏΠΎ URL, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² Ρ‚Π°Π·ΠΈ константа. yaml.schemas ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π·ΡˆΠΈΡ€ΠΈ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ схСми β€” ΠΏΠΎΠ²Π΅Ρ‡Π΅ информация Π²ΠΈΠΆΡ‚Π΅ Π² ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½Π°Ρ‚Π° докумСнтация.

Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ YAML Ρ„Π°ΠΉΠ» ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π΄ΠΎΠ²ΡŠΡ€ΡˆΠ²Π°Π½Π΅. НатисканСто Π½Π° +ΠΏΡ€ΠΎΠ±Π΅Π» (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³Π° комбинация, настроСна Π² vim) трябва Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅Ρ‚Π° ΠΈ докумСнтацията Π² зависимост ΠΎΡ‚ тСкущия контСкст:

Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes
Π’ΡƒΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ +ΠΏΡ€ΠΎΠ±Π΅Π», Π·Π°Ρ‰ΠΎΡ‚ΠΎ настроих inoremap coc#refresh(). Ако Π½Π΅ стС Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ β€” Π²ΠΈΠΆΡ‚Π΅ coc.nvim README Π·Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½Π° конфигурация.

Π˜Π·Π±ΠΎΡ€ Π½Π° вСрсия Π½Π° Kubernetes API

Към ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° написванС Π½Π° Ρ‚Π°Π·ΠΈ статия yaml-language-server ΠΏΡ€Π΅Π΄Π»Π°Π³Π° схСми Π½Π° Kubernetes 1.14.0. НС Π½Π°ΠΌΠ΅Ρ€ΠΈΡ… Π½Π°Ρ‡ΠΈΠ½ Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ ΠΈΠ·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° схСма, Π·Π°Ρ‚ΠΎΠ²Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ… ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‰ΠΈΡ GitHub issue. Π—Π° щастиС, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Сзиковият ΡΡŠΡ€Π²ΡŠΡ€ Π΅ написан Π½Π° typescript, Π΅ ΠΌΠ½ΠΎΠ³ΠΎ лСсно Ρ€ΡŠΡ‡Π½ΠΎ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ вСрсията. Π—Π° Ρ†Π΅Π»Ρ‚Π° просто Π½Π°ΠΌΠ΅Ρ€Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ»Π° server.ts.

Π—Π° Π΄Π° Π³ΠΎ ΠΎΡ‚ΠΊΡ€ΠΈΠ΅Ρ‚Π΅ Π½Π° своята машина, просто ΠΎΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ YAML Ρ„Π°ΠΉΠ» с vim ΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Ρ‚Π΅ процСса с yaml-language-server.

ps aux | grep -i yaml-language-server

joshrosso         2380  45.9  0.2  5586084  69324   ??  S     9:32PM   0:00.43 /usr/local/Cellar/node/13.5.0/bin/node /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js --node-ipc --node-ipc --clientProcessId=2379
joshrosso         2382   0.0  0.0  4399352    788 s001  S+    9:32PM   0:00.00 grep -i yaml-language-server

Π—Π° нас Π΅ Π²Π°ΠΆΠ΅Π½ процСс 2380: ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΠΉ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ‚ vim ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° YAML Ρ„Π°ΠΉΠ».

ΠšΠ°ΠΊΡ‚ΠΎ лСсно ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΠΈΠ΄ΠΈ, Ρ„Π°ΠΉΠ»ΡŠΡ‚ сС Π½Π°ΠΌΠΈΡ€Π° Π² /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js. Π”ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΅ Π΄Π° Π³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Ρ‚Π΅, промСняйки стойността Π½Π° KUBERNETES_SCHEMA_URL, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° вСрсия 1.17.0:

// old 1.14.0 schema
//exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/garethr/kubernetes-json-schema/master/v1.14.0-standalone-strict/all.json";
// new 1.17.0 schema in instrumenta repo
exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/instrumenta/kubernetes-json-schema/master/v1.17.0-standalone-strict/all.json";

Π’ зависимост ΠΎΡ‚ вСрсията Π½Π° използвания coc-yaml Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° Π² ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ. ΠžΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Π΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ ΠΎΡ‚ garethr Π½Π° instrumenta. ИзглСТда, Ρ‡Π΅ garethr Π΅ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π» към ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° схСмитС Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΌ.

Π—Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ Π΄Π°Π»ΠΈ промяната Π΅ влязла Π² сила, Π²ΠΈΠΆΡ‚Π΅ Π΄Π°Π»ΠΈ сС появява ΠΏΠΎΠ»Π΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈ [Π² ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ‚Π΅ вСрсии Π½Π° Kubernetes] Π½Π΅ бСшС Π½Π°Π»ΠΈΡ‡Π½ΠΎ. НапримСр, Π² схСмата Π·Π° K8s 1.14 Π½Π΅ бСшС startupProbe:

Vim с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° YAML Π·Π° Kubernetes

РСзюмС

Надявам сС, Ρ‚Π°Π·ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π²ΠΈ Π΅ Π·Π°Ρ€Π°Π΄Π²Π°Π»Π° Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π°, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΈ ΠΌΠ΅Π½. ΠŸΡ€ΠΈΡΡ‚Π½ΠΎ YAML’ing! НС забравяйтС Π΄Π° сС Π·Π°ΠΏΠΎΠ·Π½Π°Π΅Ρ‚Π΅ с Ρ‚Π΅Π·ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, Π·Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ инструмСнтитС, спомСнати Π² статията:

P.S. ΠΎΡ‚ ΠΏΡ€Π΅Π²ΠΎΠ΄Π°Ρ‡Π°

И ΠΎΡ‰Π΅ ΠΈΠΌΠ° vikube, vim-kubernetes ΠΈ vimkubectl.

ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Π² нашия Π±Π»ΠΎΠ³:

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster