Один клик — удалённый GPU-сервер с Ollama + VS Code Remote
Project description
# Gpu-setup — один клик до удалённого GPU-сервера с Ollama и VS Code Remote
Автоматическая настройка SSH, установка [Ollama](https://ollama.com/), загрузка LLM-моделей и открытие VS Code Remote на удалённом GPU-сервере — всё одной командой.
---
## Возможности
- **Генерация SSH-ключей** (ed25519 / RSA) и автоматическое копирование публичного ключа на сервер.
- **Настройка `~/.ssh/config`** с алиасом для удобного подключения.
- **Установка Ollama** (через официальный скрипт) с запуском сервиса.
- **Загрузка моделей** (например, `llama3.2`, `gemma2`) с живым выводом прогресса.
- **Автоматический запуск VS Code Remote** (если установлен `code` CLI).
- **Режим `--dry-run`** для безопасного просмотра плана действий.
- **Красивый вывод** с помощью `rich`.
---
## Предварительные требования
- Python 3.8+ (рекомендуется 3.10)
- Удалённый сервер с Linux (Ubuntu/Debian/CentOS) и предустановленным Python
- Доступ по SSH с паролем (для первого копирования ключа)
- На локальной машине:
- `ssh-keygen` (обычно уже есть)
- `ssh` клиент
- (опционально) `code` для VS Code Remote (если планируете открывать редактор)
---
## Установка
pip install gpu-server-setup
После этого команда `gpu-server-setup` будет доступна в терминале.
---
## Использование
Общий синтаксис:
```bash
gpu-server-setup [команда] [опции]
Доступные команды
| Команда | Описание |
|---|---|
setup |
Полная настройка: SSH, Ollama, модель, VS Code |
ssh |
Только настройка SSH-ключей и алиаса |
ollama-install |
Установка Ollama на сервер |
model-pull |
Загрузка указанной модели (после установки Ollama) |
vscode |
Открытие VS Code Remote (если code установлен) |
plan |
Показать план действий без выполнения (dry-run) |
Подробное описание команд
gpu-server-setup setup
Выполняет все шаги: генерация ключа, копирование, настройка SSH-конфига, установка Ollama, загрузка модели, открытие VS Code.
Опции:
--ip(обязательный) — IP сервера--user(обязательный) — имя пользователя--password(обязательный для первого подключения) — пароль (можно ввести интерактивно)--model— модель для скачивания (напримерllama3.2)--install-ollama/--no-install— устанавливать Ollama (по умолчанию--install-ollama)--no-vscode— не открывать VS Code (по умолчанию открывает)--dry-run— только показать план--key-type— тип ключа:ed25519(по умолчанию) илиrsa
gpu-setup ssh
Только настройка SSH-доступа по ключу.
Опции:
--ip(обязательный)--user(обязательный)--password(обязательный для первого копирования)--dry-run--key-type
gpu-server-setup ollama-install
Устанавливает Ollama на сервер (требуется пароль для sudo).
Опции:
--ip(обязательный)--user(обязательный)--password(обязательный, т.к. нужен sudo)--dry-run
gpu-server-setup model-pull MODEL
Скачивает указанную модель через Ollama. Если сервис Ollama не запущен, пытается запустить его автоматически.
Аргументы:
MODEL— имя модели (напримерllama3.2)
Опции:
--ip(обязательный)--user(обязательный)--password(необязателен, если SSH уже настроен; нужен только для запуска сервиса)--dry-run
gpu-server-setup vscode
Открывает текущую сессию в VS Code Remote.
Опции:
--ip(обязательный)--user(обязательный)--password(не требуется, если ключ настроен)--dry-run
gpu-server-setup plan
Показывает, какие шаги будут выполнены при вызове setup с указанными параметрами.
Опции:
--ip(обязательный)--user(обязательный)--model--install-ollama/--no-install--no-vscode
Примеры использования
1. Полная настройка (самый частый вариант)
gpu-server-setup setup --ip IP --user user --password password --model llama3.2
2. Только SSH-ключи + config
gpu-server-setup ssh --ip IP --user user --password password
3. Только установить Ollama
gpu-server-setup ollama-install --ip IP --user user --password password
4. Только скачать модель (пароль уже не нужен, если SSH настроен)
gpu-server-setup model-pull llama3.2 --ip IP --user user
5. Только открыть VS Code Remote
gpu-server-setup vscode --ip IP --user user
6. Посмотреть план перед запуском
gpu-server-setup plan --ip IP --user user --model llama3.2
Dry-run
Любая команда поддерживает флаг --dry-run.
В этом режиме ничего не изменяется, а только выводится, что было бы сделано.
gpu-server-setup setup --ip IP --user user --dry-run
Устранение неполадок
ssh: Could not resolve hostname— проверьте IP и доступность сервера.- Ошибка при копировании ключа — убедитесь, что пароль верный и на сервере разрешена аутентификация по паролю (
PasswordAuthentication yesв/etc/ssh/sshd_config). - Ollama не устанавливается — возможно, требуется вручную разрешить
sudoбез пароля или передать пароль в опции. - VS Code не открывается — установите CLI-команду
code(в VS Code:Shift+Ctrl+P→Install 'code' command in PATH).
Лицензия
MIT License. См. файл LICENSE.
Вклад
PR и issues приветствуются!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gpu_server_setup-0.4.7.tar.gz.
File metadata
- Download URL: gpu_server_setup-0.4.7.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b653bdbd966b6f467f4ded8090b5ab5c7ce3870e631a8830aa8fd73d77546582
|
|
| MD5 |
151e3f1ca4a53dca676df9d5cdb19a71
|
|
| BLAKE2b-256 |
03151676977074f8d656f1a22f3e983a8c3cba9faf7171234f456aee4b2f3ea4
|
File details
Details for the file gpu_server_setup-0.4.7-py3-none-any.whl.
File metadata
- Download URL: gpu_server_setup-0.4.7-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e90c8cdfe9b599b11e513743da81c773e597cb2746b2adefcf7495d4e2fda88
|
|
| MD5 |
92a4ef59555bd9728a9dee2e7503e3fb
|
|
| BLAKE2b-256 |
37c4c945ae345893919566d2093b0af44b2448249e0f5e71221a6e87761a15d1
|