peginelab-site/projects.html
PegiNelab Admin 8a31d33271
Some checks are pending
Deploy to server / deploy (push) Waiting to run
Добавлены главная страница и страница проектов
2025-12-12 03:24:29 +03:00

202 lines
8.4 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>PegiNelab - Проекты</title>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background: linear-gradient(135deg, #1a2980 0%, #26d0ce 100%);
color: white;
margin: 0;
padding: 20px;
min-height: 100vh;
}
.container {
max-width: 1200px;
margin: 0 auto;
}
.logo {
max-width: 100px;
margin: 20px auto;
display: block;
}
nav {
margin: 30px 0;
text-align: center;
}
nav a {
color: white;
text-decoration: none;
margin: 0 10px;
padding: 10px 20px;
border-radius: 8px;
transition: all 0.3s;
}
nav a:hover {
background: rgba(255,255,255,0.2);
}
.projects-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
gap: 25px;
margin: 40px 0;
}
.project-card {
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(10px);
border-radius: 15px;
padding: 25px;
border-left: 5px solid #4CAF50;
transition: transform 0.3s;
}
.project-card:hover {
transform: translateY(-5px);
background: rgba(255, 255, 255, 0.15);
}
.project-card.ci {
border-left-color: #2196F3;
}
.project-card.bot {
border-left-color: #FF9800;
}
.project-card.infra {
border-left-color: #9C27B0;
}
.tag {
display: inline-block;
padding: 4px 10px;
background: rgba(255,255,255,0.2);
border-radius: 20px;
font-size: 0.8rem;
margin-right: 8px;
margin-top: 8px;
}
.btn {
display: inline-block;
padding: 10px 20px;
background: #2196F3;
color: white;
text-decoration: none;
border-radius: 8px;
margin-top: 15px;
font-weight: bold;
}
.btn:hover {
background: #0b7dda;
}
</style>
</head>
<body>
<div class="container">
<img src="peginelab.png" alt="PegiNelab" class="logo">
<h1 style="text-align: center;">📁 Проекты PegiNelab</h1>
<p style="text-align: center;">Все системы и сервисы платформы</p>
<nav>
<a href="index.html">🏠 Главная</a>
<a href="projects.html">📁 Проекты</a>
<a href="status.html">📊 Статус</a>
<a href="about.html"> О системе</a>
</nav>
<div class="projects-grid">
<!-- CI/CD Projects -->
<div class="project-card ci">
<h3>🚀 CI/CD Автоматизация</h3>
<p>Полный цикл сборки, тестирования и деплоя проектов</p>
<div>
<span class="tag">Docker</span>
<span class="tag">GitLab CI</span>
<span class="tag">Forgejo</span>
</div>
<p><strong>Статус:</strong> <span style="color: #4CAF50;">● Активен</span></p>
<p><strong>Репозиторий:</strong> peginelab/ci-system</p>
<a href="https://peginelab.com/git/peginelab/ci-system" class="btn" target="_blank">Открыть в Git</a>
</div>
<!-- Telegram Bot -->
<div class="project-card bot">
<h3>🤖 Telegram CI/CD Bot</h3>
<p>Бот для управления развертыванием, мониторинга SSL и уведомлений</p>
<div>
<span class="tag">Python</span>
<span class="tag">Docker</span>
<span class="tag">Telegram API</span>
</div>
<p><strong>Статус:</strong> <span style="color: #4CAF50;">● Online</span></p>
<p><strong>Команд:</strong> /start, /ssl_check, /status</p>
<a href="https://t.me/peginelab_bot" class="btn" target="_blank">Написать боту</a>
</div>
<!-- SSL Monitor -->
<div class="project-card infra">
<h3>🔐 SSL Монитор</h3>
<p>Автоматическое обновление SSL сертификатов и проверка их срока действия</p>
<div>
<span class="tag">Bash</span>
<span class="tag">Let's Encrypt</span>
<span class="tag">Cron</span>
</div>
<p><strong>Статус:</strong> <span style="color: #4CAF50;">● Мониторинг</span></p>
<p><strong>След. проверка:</strong> 13.12.2025 02:00</p>
<a href="index.html" class="btn">На главную</a>
</div>
<!-- Infrastructure -->
<div class="project-card infra">
<h3>🐳 Docker Инфраструктура</h3>
<p>Контейнеризация всех сервисов: Nginx, Forgejo, Portainer, мониторинг</p>
<div>
<span class="tag">Docker Compose</span>
<span class="tag">Nginx</span>
<span class="tag">Portainer</span>
</div>
<p><strong>Контейнеров:</strong> 4 активных</p>
<p><strong>Сеть:</strong> cicd-network</p>
<a href="https://peginelab.com:9000" class="btn" target="_blank">Portainer</a>
</div>
<!-- This Website -->
<div class="project-card">
<h3>🌐 Сайт PegiNelab.com</h3>
<p>Главный сайт платформы с автоматическим деплоем через CI/CD</p>
<div>
<span class="tag">HTML/CSS/JS</span>
<span class="tag">CI/CD</span>
<span class="tag">Forgejo Actions</span>
</div>
<p><strong>Статус:</strong> <span style="color: #4CAF50;">● Обновлён</span></p>
<p><strong>Последний деплой:</strong> Только что</p>
<a href="https://peginelab.com/git/peginelab/peginelab-site" class="btn" target="_blank">Исходный код</a>
</div>
<!-- New Project Template -->
<div class="project-card" style="border-left-color: #607D8B;">
<h3> Добавить новый проект</h3>
<p>Создать новый сервис в экосистеме PegiNelab</p>
<div>
<span class="tag">Шаблон</span>
<span class="tag">CI/CD</span>
<span class="tag">Docker</span>
</div>
<p><strong>Шаги:</strong></p>
<ol style="font-size: 0.9rem;">
<li>Создать репозиторий в Forgejo</li>
<li>Добавить Dockerfile</li>
<li>Настроить .gitlab-ci.yml</li>
<li>Добавить в docker-compose.yml</li>
</ol>
<a href="https://peginelab.com/git/new" class="btn" target="_blank">Создать проект</a>
</div>
</div>
<div style="text-align: center; margin-top: 50px; padding: 20px; background: rgba(255,255,255,0.1); border-radius: 10px;">
<h3>📊 Статистика</h3>
<p>Всего проектов: <strong>6</strong> | Активных: <strong>5</strong> | Репозиториев: <strong>8</strong></p>
<p><a href="index.html" style="color: #4CAF50;">← Вернуться на главную</a></p>
</div>
</div>
</body>
</html>