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

Uploaded Python 3

File details

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

File metadata

  • Download URL: gpu_server_setup-0.4.5.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.5.tar.gz
Algorithm Hash digest
SHA256 e2b14b52719eb9e5933730caa301470608c70af95dc8c867c05453d603a948f7
MD5 940d4d0e5741e3ac79070716746704ed
BLAKE2b-256 762886580f80669b5ecb0acc93248a3528ddd1ca2c41bb78a097ac42e5a178bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for gpu_server_setup-0.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 fce3105a48c5d97a892e56cf44e5d6fe3c19d2434f24db5673cc7fa95ec2230b
MD5 d7a3c045c282a5e3ea10fa2240756a28
BLAKE2b-256 5a40de87376ce848cde15e18b649ee6a351669b17ddde7cad4f19c760a41b661

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