Skip to main content

Один клик — удалённый 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+PInstall 'code' command in PATH).

Лицензия

MIT License. См. файл LICENSE.


Вклад

PR и issues приветствуются!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gpu_server_setup-0.4.4.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gpu_server_setup-0.4.4-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file gpu_server_setup-0.4.4.tar.gz.

File metadata

  • Download URL: gpu_server_setup-0.4.4.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

Hashes for gpu_server_setup-0.4.4.tar.gz
Algorithm Hash digest
SHA256 b24248e3e73be63a9dac33b50804128ef474eca6e730d803068543d2e4b4883b
MD5 55e5d7fcf36a971a0161b48f8301c520
BLAKE2b-256 9e4629ed314bad83df254b2678db82a6fac51a88802d87880e1925401768989b

See more details on using hashes here.

File details

Details for the file gpu_server_setup-0.4.4-py3-none-any.whl.

File metadata

File hashes

Hashes for gpu_server_setup-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8ca56e5f094fd31d07782df21f31974f60fa2c0136cf725c539dc22aee1ef2cc
MD5 14d226009a008d023effe64d7023253e
BLAKE2b-256 116ac2a070a6e831961c8e2ec319a9ba578ed9baafc3f57f74b03af1772f1522

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page