From 5f7346f223175ef0054a3330017ea422dc7ba5a4 Mon Sep 17 00:00:00 2001 From: Andrii Holovin Date: Sun, 4 Feb 2024 20:32:10 +0200 Subject: [PATCH] Update README-uk.md --- README-uk.md | 231 +++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 177 insertions(+), 54 deletions(-) diff --git a/README-uk.md b/README-uk.md index c1605b0c85..3b4e7c1e27 100644 --- a/README-uk.md +++ b/README-uk.md @@ -1,86 +1,209 @@ - # Документація Kubernetes [![Netlify Status](https://api.netlify.com/api/v1/badges/be93b718-a6df-402a-b4a4-855ba186c97d/deploy-status)](https://app.netlify.com/sites/kubernetes-io-main-staging/deploys) [![GitHub release](https://img.shields.io/github/release/kubernetes/website.svg)](https://github.com/kubernetes/website/releases/latest) - -Вітаємо! В цьому репозиторії міститься все необхідне для роботи над [сайтом і документацією Kubernetes](https://kubernetes.io/). Ми щасливі, що ви хочете зробити свій внесок! +Цей репозиторій містить матеріали потрібні для створення [вебсайту Kubernetes та документації](https://kubernetes.io/). Ми щасливі, що ви хочете зробити свій внесок! - -## Запуск сайту локально зa допомогою Hugo +- [Внесок до документації](#внесок-до-документації) +- [Локалізовані файли README](#локалізовані-файли-readme) - -Для інструкцій з встановлення Hugo дивіться [офіційну документацію](https://gohugo.io/getting-started/installing/). Обов’язково встановіть розширену версію Hugo, яка позначена змінною оточення `HUGO_VERSION` у файлі [`netlify.toml`](netlify.toml#L10). +## Користування цим репозиторієм - -Після встановлення Hugo, запустіть сайт локально командою: +Ви можете запустити вебсайт локально, використовуючи [Hugo (розширена версія)](https://gohugo.io/), або ви можете запустити його в контейнерному середовищі. Ми настійно рекомендуємо використовувати контейнерне середовище, оскільки воно забезпечує однорідність розгортання порівняно з основним вебсайтом. + +## Передумови + +Для користування цим репозиторієм вам потрібно локально встановити наступні інструменти: + +- [npm](https://www.npmjs.com/) +- [Go](https://go.dev/) +- [Hugo (Розширена версія)](https://gohugo.io/) +- Середовище запуску контейнерів, наприклад [Docker](https://www.docker.com/). + +Перед тим як розпочати, встановіть залежності. Зробіть клон репозиторію та перейдіть в теку: ```bash git clone https://github.com/kubernetes/website.git cd website -git submodule update --init --recursive --depth 1 -make serve ``` - -Команда запустить локальний Hugo-сервер на порту 1313. Відкрийте у своєму браузері http://localhost:1313, щоб побачити сайт. По мірі того, як ви змінюєте вихідний код, Hugo актуалізує сайт відповідно до внесених змін і оновлює сторінку у браузері. +Сайт Kubernetes використовує [Docsy Hugo theme](https://github.com/google/docsy#readme). Навіть якщо ви плануєте запускати вебсайт в контейнері, ми настійливо рекомендуємо встановити субмодулі та інші залежності зробивши наступне: - -## Спільнота, обговорення, внесок і підтримка +### Windows +```powershell +# отримання залежностей субмодулів +git submodule update --init --recursive --depth 1 +``` - -Дізнайтеся, як долучитися до спільноти Kubernetes на [сторінці спільноти](http://kubernetes.io/community/). +### Linux / інші Unix +```bash +# отримання залежностей субмодулів +make module-init +``` - -Для зв’язку із супроводжуючими проекту скористайтеся: +## Запуск вебсайту використовуючи контейнер + +Для збирання вебсайту з використанням контейнера, зробіть наступне: + +```bash +# Ви можете встановити у $CONTAINER_ENGINE назву будь-якого Docker-подібного інструменту +make container-serve +``` + +Якщо ви бачите помилку, скоріш за все це означає, що контейнеру hugo не вистачило обчислювальних ресурсів. Для її розвʼязання збільште обсяг процесорних потужностей та памʼяті для Docker у себе на компʼютері ([MacOS](https://docs.docker.com/desktop/settings/mac/) та [Windows](https://docs.docker.com/desktop/settings/windows/)). + +Відкрийте у себе в оглядачі адресу для перегляду локального вебсайту. По міри того, як ви вноситимете зміни в сирці, Hugo оновлюватиме вебсайт та перезавантажуватиме сторінку в оглядачі. + +## Запуск сайт локально з використанням Hugo + +Переконайтесь, що ви встановили розширену версію Hugo яку вказано у змінній оточення `HUGO_VERSION` файлу [`netlify.toml`](netlify.toml#L11). + +Для встановлення залежностей, розгорніть та перевірте сайт локально: + +- На macOS та Linux + ```bash + npm ci + make serve + ``` +- На Windows (PowerShell) + ```powershell + npm ci + hugo.exe server --buildFuture --environment development + ``` + +Це призведе до запуску локального сервера Hugo, який відповідатиме на запити на порту 1313. Відкрийте у себе в оглядачі адресу для перегляду локального вебсайту. По міри того, як ви вноситимете зміни в сирці, Hugo оновлюватиме вебсайт та перезавантажуватиме сторінку в оглядачі. + +## Створення довідкових сторінок API + +Довідкові сторінки API, розташовані в `content/en/docs/reference/kubernetes-api`, створюються на основі специфікації Swagger, також відомої як специфікація OpenAPI, за допомогою . + +Для оновлення довідкових сторінок для нового випуску Kubernetes виконайте наступні кроки: + +1. Отримайте субмодуль `api-ref-generator`: + + ```bash + git submodule update --init --recursive --depth 1 + ``` + +2. Оновіть специфікацію Swagger: + + ```bash + curl 'https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json' > api-ref-assets/api/swagger.json + ``` + +3. В `api-ref-assets/config/`, змініть файли `toc.yaml` та `fields.yaml`, так щоб вони вказували на новий випуск. + +4. Далі, зберіть сторінки: + + ```bash + make api-reference + ``` + + Ви можете протестувати результати локально запустивши сайт з образу контейнера: + + ```bash + make container-image + make container-serve + ``` + + У вебоглядачі перейдіть до для перегляду довідки API. + +5. Коли всі зміни, щодо переходу на нову версію внесені у файли `toc.yaml` та `fields.yaml`, створіть запит на втягування (pull request) з новоствореними сторінками довідки API. + +## Усунення несправностей + +### error: failed to transform resource: TOCSS: failed to transform "scss/main.scss" (text/x-scss): this feature is not available in your current Hugo version + +Hugo має два виконуваних файли з технічних причин. Поточний вебсайт запускається лише на **Hugo Extended**. На сторінці [release page](https://github.com/gohugoio/hugo/releases) шукайте архів з `extended`  в назві. Для перевірки запустіть `hugo version` та шукайте слово `extended` у виводі. + +### Усунення несправностей в macOS для занадто великої кількості відкритих файлів + +Якщо ви запускаєте `make serve` в macOS та отримуєте наступну помилку: + +```bash +ERROR 2020/08/01 19:09:18 Error: listen tcp 127.0.0.1:1313: socket: too many open files +make: *** [serve] Error 1 +``` + +Перевірте поточні обмеження на кількість відкритих файлів: + +`launchctl limit maxfiles` + +Потім виконайте наступні команди (взято з ): + +```shell +#!/bin/sh + +# These are the original gist links, linking to my gists now. +# curl -O https://gist.githubusercontent.com/a2ikm/761c2ab02b7b3935679e55af5d81786a/raw/ab644cb92f216c019a2f032bbf25e258b01d87f9/limit.maxfiles.plist +# curl -O https://gist.githubusercontent.com/a2ikm/761c2ab02b7b3935679e55af5d81786a/raw/ab644cb92f216c019a2f032bbf25e258b01d87f9/limit.maxproc.plist + +curl -O https://gist.githubusercontent.com/tombigel/d503800a282fcadbee14b537735d202c/raw/ed73cacf82906fdde59976a0c8248cce8b44f906/limit.maxfiles.plist +curl -O https://gist.githubusercontent.com/tombigel/d503800a282fcadbee14b537735d202c/raw/ed73cacf82906fdde59976a0c8248cce8b44f906/limit.maxproc.plist + +sudo mv limit.maxfiles.plist /Library/LaunchDaemons +sudo mv limit.maxproc.plist /Library/LaunchDaemons + +sudo chown root:wheel /Library/LaunchDaemons/limit.maxfiles.plist +sudo chown root:wheel /Library/LaunchDaemons/limit.maxproc.plist + +sudo launchctl load -w /Library/LaunchDaemons/limit.maxfiles.plist +``` + +Це працює як для Catalina, так і для Mojave macOS. + +## Приєднуйтесь до SIG Docs + +Дізнайтеся більше про спільноту SIG Docs Kubernetes та зустрічі на [сторінці спільноти](https://github.com/kubernetes/community/tree/master/sig-docs#meetings). + +Ви також можете звʼязатися з супроводжуючими цього проєкту: - [Slack](https://kubernetes.slack.com/messages/sig-docs) -- [Поштова розсилка](https://groups.google.com/forum/#!forum/kubernetes-sig-docs) + - [Отримайте запрошення до Slack](https://slack.k8s.io/) +- [Список розсилки](https://groups.google.com/forum/#!forum/kubernetes-sig-docs) - -## Внесок у документацію +## Внесок до документації - -Ви можете створити копію цього репозиторія у своєму акаунті на GitHub, натиснувши на кнопку **Fork**, що розташована справа зверху. Ця копія називатиметься *fork* (відгалуження). Зробіть будь-які необхідні зміни у своєму відгалуженні. Коли ви будете готові надіслати їх нам, перейдіть до свого відгалуження і створіть новий pull request, щоб сповістити нас. +Ви можете натиснути кнопку **Fork** у верхній правій частині екрана, щоб створити копію цього репозиторію у своєму обліковому записі GitHub. Ця копія називається _fork_ (відгалуження). Вносьте будь-які зміни, які ви хочете у своєму відгалуженні, і коли ви будете готові надіслати ці зміни нам, перейдіть до нього та створіть новий pull request (запит на втягування), щоб повідомити нас про це. - -Після того, як ви створили pull request, рецензент Kubernetes зобов’язується надати вам по ньому чіткий і конструктивний коментар. **Ваш обов’язок як творця pull request - відкоригувати його відповідно до зауважень рецензента Kubernetes.** +Після створення вашого запиту на втягування, рецензент Kubernetes візьме на себе відповідальність за надання чіткого та практичного відгуку. Як власник запиту на втягування, **вам належить внести зміни до вашого запиту на втягування, щоб відповісти на отриманий відгук від рецензента Kubernetes.** - -Також, зауважте: може статися так, що ви отримаєте коментарі від декількох рецензентів Kubernetes або від іншого рецензента, ніж той, якого вам було призначено від початку. +Крім того, зверніть увагу, що у вас може бути більше одного рецензента Kubernetes, який надасть вам відгук, або ви можете отримати зворотний звʼязок від рецензента Kubernetes, який відрізняється від того, який спочатку був призначений для надання вам зворотного звʼязку. - -Крім того, за потреби один із ваших рецензентів може запросити технічну перевірку від одного з технічних рецензентів Kubernetes, коли це необхідно. Рецензенти намагатимуться відреагувати вчасно, проте час відповіді може відрізнятися в залежності від обставин. +Крім того, в деяких випадках один з ваших рецензентів може попросити технічний огляд у технічного рецензента Kubernetes, коли це необхідно. Рецензенти зроблять все можливе, щоб своєчасно надати відгук, але час відповіді може змінюватися залежно від обставин. - -Більше інформації про внесок у документацію Kubernetes ви знайдете у наступних джерелах: +Для отримання додаткової інформації про внесок у документацію Kubernetes див.: -* [Внесок: з чого почати](https://kubernetes.io/docs/contribute/) -* [Використання шаблонів сторінок](https://kubernetes.io/docs/contribute/style/page-content-types/) -* [Керівництво зі стилю оформлення документації](http://kubernetes.io/docs/contribute/style/style-guide/) -* [Переклад документації Kubernetes іншими мовами](https://kubernetes.io/docs/contribute/localization/) +- [Участь в створені документації Kubernetes](https://kubernetes.io/docs/contribute/) +- [Типи вмісту сторінок](https://kubernetes.io/docs/contribute/style/page-content-types/) +- [Посібник зі стилю документації](https://kubernetes.io/docs/contribute/style/style-guide/) +- [Локалізація документації Kubernetes](https://kubernetes.io/docs/contribute/localization/) +- [Introduction to Kubernetes Docs](https://www.youtube.com/watch?v=pprMgmNzDcw) - -## Файл `README.md` іншими мовами +### Помічники для нових учасників -| інші мови | інші мови | -|-------------------------------|-------------------------------| -| [Англійська](README.md) | [Французька](README-fr.md) | -| [Корейська](README-ko.md) | [Німецька](README-de.md) | -| [Португальська](README-pt.md) | [Хінді](README-hi.md) | -| [Іспанська](README-es.md) | [Індонезійська](README-id.md) | -| [Китайська](README-zh.md) | [Японська](README-ja.md) | -| [В'єтнамська](README-vi.md) | [Російська](README-ru.md) | -| [Італійська](README-it.md) | [Польська](README-pl.md) | +Якщо вам потрібна допомога в будь-який момент, коли ви робите свій внесок, [помічник для нових учасників](https://kubernetes.io/docs/contribute/advanced/#serve-as-a-new-contributor-ambassador) є тою особою, до якої варто звертатись. Вони затверджують роботу інших в SIG Docs, їх обов'язки включають наставництво нових учасників та допомогу їм у перших кількох запитах на злиття змін. Найкращим місцем для звʼязку з помічниками є [Kubernetes Slack](https://slack.k8s.io/). Поточні помічники в SIG Docs: + +| Імʼя | Slack | GitHub | +| -------------------------- | -------------------------- | -------------------------- | +| Arsh Sharma | @arsh | @RinkiyaKeDad | + +## Локалізовані файли README + +| Мова | Мова | +| -------------------------- | -------------------------- | +| [Китайська](README-zh.md) | [Корейська](README-ko.md) | +| [Французька](README-fr.md) | [Польська](README-pl.md) | +| [Німецька](README-de.md) | [Португальська](README-pt.md) | +| [Хінді](README-hi.md) | [Російська](README-ru.md) | +| [Індонезійська](README-id.md) | [Іспанська](README-es.md) | +| [Італійська](README-it.md) | [Українська](README-uk.md) | +| [Японська](README-ja.md) | [Вʼєтнамська](README-vi.md) | - ## Кодекс поведінки - -Участь у спільноті Kubernetes визначається правилами [Кодексу поведінки СNCF](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). +Участь у спільноті Kubernetes регулюється [Кодексом поведінки CNCF](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). - -## Дякуємо! +## Дякуємо вам - -Долучення до спільноти - запорука успішного розвитку Kubernetes. Ми цінуємо ваш внесок у наш сайт і документацію! +Kubernetes процвітає завдяки участі спільноти, і ми цінуємо ваш внесок у наш вебсайт та нашу документацію!