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.7.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.7-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

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

Hashes for gpu_server_setup-0.4.7.tar.gz
Algorithm Hash digest
SHA256 b653bdbd966b6f467f4ded8090b5ab5c7ce3870e631a8830aa8fd73d77546582
MD5 151e3f1ca4a53dca676df9d5cdb19a71
BLAKE2b-256 03151676977074f8d656f1a22f3e983a8c3cba9faf7171234f456aee4b2f3ea4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for gpu_server_setup-0.4.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8e90c8cdfe9b599b11e513743da81c773e597cb2746b2adefcf7495d4e2fda88
MD5 92a4ef59555bd9728a9dee2e7503e3fb
BLAKE2b-256 37c4c945ae345893919566d2093b0af44b2448249e0f5e71221a6e87761a15d1

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