April 16

Хостинги c Python

подборка бесплатных хостингов с доступом к терминалу (SSH) и Python — всё отобрано по настоящей поддержке CLI, а не по рекламным лозунгам:


1. Replit

Возможность Есть?
✅ SSH через веб
✅ (встроенный)
✅ Python Да, любой
✅ Файловая система Да
✅ Web-сервер Да (preview + публичный URL)
📦 Поддержка Markdown → HTML? Да, можно всё самописно или через Flask

💡 Отлично подойдёт для Markdown → HTML генератора на Flask + веб-интерфейс + файлы.


2. Glitch

Возможность Есть?
❗ Pseudo-shell Да, но ограничено
✅ Python/Node.js Да (ограниченный runtime)
✅ Web-просмотр Да (auto-refresh на каждый файл)

📦 Прекрасен для микро-сервисов, API или frontend+backend шаблонов.
SSH формально нет, но CLI есть (через консоль в браузере).


3. Render Free Web Services

Возможность Есть?
✅ Python Да (WSGI: Flask, FastAPI)
❌ SSH Только логирование
✅ Markdown-проекты Да (через генератор, Flask, Hugo, и т.п.)

💡 Можно деплоить с GitHub, Markdown → HTML через Python/Flask — удобно.


4. GitHub Codespaces

Возможность Есть?
✅ Full SSH Да (через VSCode)
✅ Python Да, любой
✅ Term + pip + git Да

📦 Подходит для всего: Markdown обработка, Flask, Pandoc, Hugo и т.д.
💥 Бесплатно 60 часов/мес.


5. Oracle Cloud Free Tier

Возможность Есть?
✅ Полный SSH Да (VPS, ARM + AMD)
✅ Python Да, что хочешь
✅ Всё root-доступ Полный сервер

📦 Идеально если хочешь стабильную машину 24/7, но нужно настраивать вручную.
💥 Бесплатно навсегда: 1–2 инстанса, 4 ядра, 24 ГБ RAM на ARM.


Кого избегать (нет SSH/Python):

Хостинг Причина InfinityFree
❌ только PHP GoogieHost
❌ нет SSH/Python 000WebHost
❌ максимум — PHP AwardSpace
❌ жёсткие лимиты


Markdown генератор на Flask

📁 app.py:

from flask import Flask, request
import markdown
app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        md = request.form['markdown']
        html = markdown.markdown(md)
        return f'<h1>Preview:</h1><div>{html}</div>'
    return '<form method="post"><textarea name="markdown">
</textarea><button>Render</button></form>'

app.run()

Можно деплоить на Replit, Glitch, Codespaces или Render.