Клонирование рабочего пространства Cloud9 в настройке с поддержкой SSH

Мой вопрос касается переноса веб-приложения, встроенного в Flask, в капельницу.

Я создал приложение в частной рабочей области, используя шаблон Flask в C9. Теперь он был разработан, я хочу настроить приложение в кадре Digital Ocean. Чтобы подключить совершенно новое рабочее пространство C9 SSH к капле, это нормально; однако по умолчанию в рабочей области SSH не так много зависимостей (mySQL; Flask), и это большая боль. Я использую капельку с Ubuntu NodeJS 6.9.5 от 14.04.

Есть ли способ, чтобы мое существующее частное рабочее пространство разработчика было клонировано в рабочую область SSH? Было бы даже лучше, если бы поддерживалось одно рабочее пространство, которое синхронизируется с другим, если я хочу снять каплю по какой-либо причине.

Спасибо.

Ответ 1

Почему вы не можете просто изобразить диск, цифровую копию рабочего c9 на новом рабочем месте, а затем использовать rsync для инкрементной синхронизации.

rsync -azHAXxP -e 'ssh -p22' [email protected] \ 
"dd if=/dev/sda of=myworking-droplet.iso bs=512 conv=noerror,sync"

Теперь, когда у вас есть полная копия рабочей капли в качестве файла изображения (.iso) вы можете скопировать его на любой жесткий диск по вашему выбору и загрузиться в него.

Образ вашего Cloud9 в USB

Если ваш размер файла C9 меньше 30G, вы можете скопировать его в USB-накопитель и сохранить локально загружаемую копию, то есть вы можете отобразить это на любом более крупном USB-устройстве и сделать его загрузочным, чтобы достичь этого:

  • Установите USB большего размера, чем размер вашего iso.
  • Проверьте установленную локацию флеш-накопителя с помощью df -h или lsblk -a
  • Изобразите свой файл iso в usb с помощью:

    dd if=myworking-droplet of=/dev/sdb bs=512k conv=noerror,sync

После завершения, удалите свой диск, подключите его к другому ПК, измените порядок загрузки на USB-накопитель и загрузитесь в свой C9 локально

Синхронизируйте каталог рабочей области Cloud9 с другим полем

Это становится лучше, если вы просто хотите синхронизировать свой каталог рабочего пространства C9 через соединение SSH с другим полем, используйте:

`rsync -azHAXxP -e 'ssh -p22' [email protected]:/path/to/your/workspace .`

Вышеописанная информация будет клонировать ваш каталог рабочей области в текущем поле. ПРИМЕЧАНИЕ. Точка в конце команды необходима.

Установите рабочую область Cloud9 на локальную машину

Также вы можете подключить удаленную рабочую файловую систему к локальному компьютеру, чтобы вы могли вносить изменения в летать и обрабатывать свою капельку в качестве локального хранилища, чтобы вы могли работать и доступ к одному рабочему пространству локально без необходимости входа в ваш Cloud9 каждый раз, когда вы хотите внести изменения или работать над своим проектом, для достижения этого использования:

  • Установите SSHFS, если он еще не установлен:

    sudo apt-get install sshfs

  • Создайте локальный каталог для монтирования файловой системы капли.

    sudo mkdir /mnt/mydroplet

  • Смонтируйте капли с помощью:

    sudo sshfs -o allow_other,defer_permissions \ [email protected]:/ /mnt/mydroplet

Если ваша капля настроена для входа через авторизацию ключа ssh, используйте следующую команду:

`sudo sshfs -o allow_other,defer_permissions,IdentityFile=~/.ssh/id_rsa \
[email protected]:/ /mnt/mydroplet`

Теперь вы можете работать с файлами на капле, как если бы это было физическое устройство, прикрепленное к вашей локальной машине.

Тестирование вашего монтирования с локальной машины:

`cd /mnt/mydroplet`
  • Создайте тестовый файл

    touch TestFile.php

Теперь войдите в систему Clound9 и убедитесь, что вы можете получить доступ и изменить вновь созданный файл i.e TestFile.php

Теперь вы можете закодировать локально, он сразу появляется на вашем C9 или загружает файлы с вашего локального компьютера в Cloud9, копируя файл в локально установленный каталог.