Skip to content

πŸš€ Π‘Π°ΠΉΡ‚-ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ Full-Stack Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ стСкС (HTML, CSS, JS) ΠΈ Node.js. ДинамичСский ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, i18n, Ρ‚Π΅ΠΌΡ‹ ΠΈ API для Telegram.

License

Notifications You must be signed in to change notification settings

AVP-Dev/avpdev.com

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

82 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AVPdev.com: Production-Ready Astro 5 Portfolio & Blog

Astro v5 Docker TypeScript Node.js License: MIT

Π­Ρ‚ΠΎ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сайт-ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ ΠΈ тСхничСский Π±Π»ΠΎΠ³, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ΅ Astro 5. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ слуТит Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΌ эталоном для создания соврСмСнных, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈ бСзопасных Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Вся экосистСма ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Docker ΠΈ Docker Compose, Ρ‡Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΡƒΡŽ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ окруТСния Π½Π° любом этапС β€” ΠΎΡ‚ локальной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎ production.

πŸ›οΈ АрхитСктурная философия

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ β€” практичСская рСализация Ρ‚Ρ€Π΅Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ²:

  1. Docker-First: ΠžΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ β€” это Ρ‡Π°ΡΡ‚ΡŒ прилоТСния. Π›ΡŽΠ±Π°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, тСстированиС ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ происходят ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² Docker-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ…. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ„Ρ€Π°Π·Ρƒ "Ρƒ мСня Π½Π° машинС всС Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ" ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ срСд.
  2. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (Security by Design): Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ β€” Π½Π΅ запоздалая ΠΌΡ‹ΡΠ»ΡŒ, Π° Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ слой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ многоступСнчатыС Docker-сборки, запускаСм процСссы ΠΎΡ‚ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, санируСм Π²Π²ΠΎΠ΄Ρ‹ Π½Π° сторонС сСрвСра ΠΈ управляСм сСкрСтами Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния.
  3. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ SEO ΠΊΠ°ΠΊ основа: Π‘Π°ΠΉΡ‚ спроСктирован для максимальной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ видимости Π² поисковых систСмах. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³ Astro, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ Π³Π΅ΠΎ-Ρ‚Π°Ρ€Π³Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ страницы ΠΈ внСдряСм структурированныС Π΄Π°Π½Π½Ρ‹Π΅ для достиТСния Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Core Web Vitals ΠΈ SEO.

πŸš€ ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности

  • Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ стСк: ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ Π½Π° послСднСй вСрсии Astro 5 с использованиСм Vite, Ρ‡Ρ‚ΠΎ обСспСчиваСт ΠΌΠΎΠ»Π½ΠΈΠ΅Π½ΠΎΡΠ½ΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ сборку.
  • Полная контСйнСризация: Π“ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ ΠΊ запуску ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·Π΅ Docker ΠΈ Docker Compose. Dockerfile ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ для бСзопасности ΠΈ минимального Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΎΠ±Ρ€Π°Π·Π° Π·Π° счСт multi-stage builds ΠΈ запуска ΠΎΡ‚ non-root ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
  • Π“ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³: ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ output: 'server' для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ сСрвСрных API, ΠΏΡ€ΠΈ этом Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ страниц (главная, Π±Π»ΠΎΠ³, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹) ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² статику (prerender = true) для максимальной ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • ДинамичСскоС Π“Π΅ΠΎ-Π’Π°Ρ€Π³Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: АвтоматичСская гСнСрация SEO-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… страниц услуг для Ρ€Π°Π·Π½Ρ‹Ρ… Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ² (/uslugi/[city]) с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ·Ρ‹Ρ‡Π½ΠΎΡΡ‚ΠΈ ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ кастомных страниц Π² sitemap.xml.
  • БСзопасныС API-эндпоинты: Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹Π΅ API-Ρ€ΠΎΡƒΡ‚Ρ‹ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ„ΠΎΡ€ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи ΠΈ Π±Ρ€ΠΈΡ„ΠΎΠ², с Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· Zod ΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ HTML-санитизациСй Π²Π²ΠΎΠ΄ΠΎΠ² для прСдотвращСния XSS-Π°Ρ‚Π°ΠΊ.
  • Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с Telegram: ВсС заявки с сайта ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΈ бСзопасно ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Telegram-Ρ‡Π°Ρ‚ Ρ‡Π΅Ρ€Π΅Π· сСрвСрныС API для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.
  • ΠŸΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Π°Ρ Π˜Π½Ρ‚Π΅Ρ€Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ (i18n): Полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° русского ΠΈ английского языков с автоматичСским прСфиксным Ρ€ΠΎΡƒΡ‚ΠΈΠ½Π³ΠΎΠΌ ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ систСмой управлСния ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π°ΠΌΠΈ.
  • ВСхничСскоС SEO: АвтоматичСская гСнСрация sitemap.xml, кастомный robots.txt, Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ JSON-LD Schema.org Π½Π° Π³Π΅ΠΎ-страницах ΠΈ сСмантичСская Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° для максимальной видимомости Π² поисковых систСмах.
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ΠΎΠΌ: Π‘Ρ‚Π°Ρ‚ΡŒΠΈ Π±Π»ΠΎΠ³Π°, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Astro Content Collections (Markdown) с Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°.

πŸ› οΈ Π‘Ρ‚Π΅ΠΊ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ

  • Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ: Astro 5
  • Π‘Ρ€Π΅Π΄Π° выполнСния: Node.js 24 LTS
  • Π―Π·Ρ‹ΠΊ: TypeScript
  • ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΡ: Docker, Docker Compose
  • АдаптСр SSR: @astrojs/node
  • CI/CD: ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ многоступСнчатый (multi-stage) Dockerfile с HEALTHCHECK для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° состояния прилоТСния.

βš™οΈ ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ окруТСния

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с Telegram Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния.

  1. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» .env Π² ΠΊΠΎΡ€Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ· .env.example, Ссли ΠΎΠ½ Π΅ΡΡ‚ΡŒ).

  2. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ .env вашими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ бСзопасно ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ env_file Π² docker-compose.yml.

    # .env
    
    # Π’ΠΎΠΊΠ΅Π½ вашСго Telegram-Π±ΠΎΡ‚Π°, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚ @BotFather
    BOT_TOKEN="ВАШ_Π’Π•Π›Π•Π“Π ΠΠœ_Π‘ΠžΠ’_Π’ΠžΠšΠ•Π"
    
    # ID вашСго Ρ‡Π°Ρ‚Π° ΠΈΠ»ΠΈ ΠΊΠ°Π½Π°Π»Π° для получСния ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ
    CHAT_ID="ВАШ_Π’Π•Π›Π•Π“Π ΠΠœ_ЧАВ_ID"
    
    # (ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ) ID Ρ‚ΠΎΠΏΠΈΠΊΠ° (Π²Π΅Ρ‚ΠΊΠΈ) Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сообщСний
    TOPIC_ID="ID_ВОПИКА_Π’_Π“Π Π£ΠŸΠŸΠ•"

🐳 Docker-First Workflow (Основной ΠΏΡƒΡ‚ΡŒ)

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ являСтся каноничСским для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ развСртывания. Он Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ запускаСтся Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ, бСзопасном ΠΈ воспроизводимом ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ.

ВрСбования

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎ запуску

  1. ΠšΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:

    git clone [https://github.com/AVP-Dev/avpdev.com.git](https://github.com/AVP-Dev/avpdev.com.git)
    cd avpdev.com
  2. НастройтС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния: Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» .env, ΠΊΠ°ΠΊ описано Π²Ρ‹ΡˆΠ΅.

  3. Π‘ΠΎΠ±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈ запуститС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€: Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° собСрСт Docker-ΠΎΠ±Ρ€Π°Π·, установит зависимости ΠΈ запустит сСрвис Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

    docker compose up --build -d
  4. Π“ΠΎΡ‚ΠΎΠ²ΠΎ! Π‘Π°ΠΉΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ доступСн ΠΏΠΎ адрСсу: http://localhost:3000.

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Docker

  • ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π»ΠΎΠ³ΠΎΠ² сСрвиса Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ:
    docker compose logs -f
  • ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² (с очисткой Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Ρ… Ρ‚ΠΎΠΌΠΎΠ²):
    docker compose down -v
  • ΠŸΠ΅Ρ€Π΅ΡΠ±ΠΎΡ€ΠΊΠ° ΠΎΠ±Ρ€Π°Π·Π° ΠΈ пСрСзапуск сСрвиса:
    docker compose up --build -d
  • Доступ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ):
    docker compose exec astro-app sh

πŸ”„ CI/CD Auto-Deployment (Coolify)

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ настроСн для автоматичСского развСртывания Ρ‡Π΅Ρ€Π΅Π· GitHub Actions ΠΈ Coolify.

  1. Π’ настройках ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² Coolify скопируйтС Deploy Webhook URL.
  2. Π’ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Settings > Secrets and variables > Actions.
  3. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ сСкрСт COOLIFY_WEBHOOK ΠΈ Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Ρ‚ΡƒΠ΄Π° URL.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡƒΡˆΠ΅ Π² Π²Π΅Ρ‚ΠΊΡƒ main GitHub Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡ‚ΡŒ Coolify ΠΎ нСобходимости пСрСсборки ΠΈ дСплоя.

πŸ“œ ДоступныС скрипты

Π­Ρ‚ΠΈ скрипты Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Dockerfile для процСсса сборки, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для локальной ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π±Π΅Π· Docker (Π½Π΅ рСкомСндуСтся для основной Ρ€Π°Π±ΠΎΡ‚Ρ‹).

Π‘ΠΊΡ€ΠΈΠΏΡ‚ ОписаниС
npm run dev ЗапускаСт сСрвСр для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с горячСй ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.
npm run build Π‘ΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ для production.
npm run preview ЗапускаСт Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ сСрвСр для прСдпросмотра собранной вСрсии.
npm run astro sync Π“Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΈΠΏΡ‹ TypeScript для Content Collections ΠΈ astro:content.

πŸ“„ ЛицСнзия

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ см. Π² Ρ„Π°ΠΉΠ»Π΅ LICENSE.

About

πŸš€ Π‘Π°ΠΉΡ‚-ΠΏΠΎΡ€Ρ‚Ρ„ΠΎΠ»ΠΈΠΎ Full-Stack Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ стСкС (HTML, CSS, JS) ΠΈ Node.js. ДинамичСский ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚, i18n, Ρ‚Π΅ΠΌΡ‹ ΠΈ API для Telegram.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published