Конфигурация сервиса Azure


Сначала мы займемся созданием нашей виртуальной машины на платформе Azure. В портале управления Azure ("Azure Management Portal") мы переходим по пунктам меню New > Compute > From Gallery ("Новый > Расчет > Из галереи").
1


При изучении данного предмета мы остановим свой выбор на операционной системе Ubuntu версии 12.04 LTS (Long Term Support)
2


Нам необходимо ввести требуемые данные: имя входа в систему, наименование машины, размер и т.д.
3


Конфигурация виртуальной машины


Как только виртуальная машина будет создана, я воспользуюсь утилитой PuTTY для выполнения удаленного подключения к терминалу моей виртуальной машины Ubuntu.


http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html


4


Мы открываем утилиту PuTTY и вводим ранее выбранные IP-адрес или имя DNS:
5


Если вы все сделали правильно, на экране появится предупреждение. Нажимаем "Yes" и идем дальше.


6
Теперь на экране появится запрос на ввод имени пользователя, а затем – ключа доступа; я использую в качестве имени пользователя "azureuser", а в качестве ключа доступа – нажатие клавиши [Symbol]


7
Как только соединение будет успешно установлено, мы наберем следующие команды (в порядке, в котором они здесь перечислены):


sudo apt-get update 
sudo apt-get dist-upgrade 
sudo apt-get install git-core 
$ azure login

Если в процессе выполнения любой из этих команд на экране появится запрос на подтверждение, введите "Y", а затем нажмите клавишу ввода.
8
9
Эти команды выполняют обновление вашей системы с последующей загрузкой сервера GIT.


Затем мы запустим следующую команду:


sudo -s 
adduser git #(нам будет предложено ввести данные пользователя)
su azureuser #(мы выполним вход в систему под именем azureuser)

10
11


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


mkdir ~/repositories 
sudo apt-get install acl 
chmod 700 ~/repositories 
sudo chown git:git ~/repositories

12


А теперь введем вот эти команды:


getfacl ~/repositories 
sudo ln -s /home/$USER/repositories /git 
ls -al /git

После завершения ввода всех указанных команд вам потребуется загрузить генератор ключей PuTTY ("PuTTY Key Generator"), который будет использоваться для аутентификации нашего подключения к виртуальной машине, а также, после того как такая аутентификация будет проведена – для проверки достоверности подключения к нашему Git-репозиторию.


http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html


13


Мы запускаем генератор ключей и нажимаем кнопку Generate ("Генерировать"):
14


Для генерирования случайного ключа вам будет предложено выполнить движение мышью:
15


Мы вводим пароль, а затем сохраняем секретный ключ:
16


Сохраните свой секретный ключ на рабочем столе и скопируйте открытый ключ доступа:
17


Мы возвращаемся к нашему подключению к удаленному терминалу и запускаем следующую последовательность команд:


sudo -s 
mkdir /home/git/.ssh 
echo "ssh-rsa 
AAAAB3NzaC1yc2EAAAABJQAAAQEAp7c7YmVnqeHAtiDBmpoJ3TdlH0RzgXzVu89FNN5qbqgZtnHAmqmTWqtn2lrwcuZncAAdQZ7zjW6KI/7W3TYVu8WsFQbfm5puKq0jNGyPNs0IdukDmVnBNniHaC/cXwmgNbw12puuzFFKXlICIiZ9NDUWG9+3m8JkxaZc6jZajj6ZVZqA/K6HdXX3aUD38jmQmT7J5eleAskZa2H/st6gmBBI7kUranhJuvBBhiQaNQyRRD4CRGHrAEMzy1Zxh5d5Y/4nFHjxldS+tDmTG6Ki4g0MZwUCa8s7cH7ZGWgAlGNd+UcWUsRb4cU6GMLVTeHCwb81Odkof7rdkOAC7MQVGQ== rsa-key-20141018" >> /home/git/.ssh/authorized_keys

  • Замените ключ на ваш собственный открытый ключ доступа.
    18

Завершите сеанс PuTTY. Теперь нам следует создать новое подключение.


Давайте откроем пункт меню Advanced Options ("Расширенные опции"), затем Connection ("Подключение"), а затем – SSH > Auth ("SSH > Авторизация").


Давайте теперь нажмем кнопку Browse ("Просмотр") и выберем ранее сохраненный нами секретный ключ доступа:
19


Как только мы выполним эту последовательность действий, мы увидим, что вошли в систему под именем "git"; в качестве ключа доступа, запрашиваемого системой, необходимо использовать ключ, который помог нам при генерировании нашего открытого ключа доступа (с помощью генератора ключей PuTTY):
20


Наконец, мы запускаем следующую последовательность команд:


cd /git 
git init --bare myrepo.git

Настройки вашего ПК


Давайте установим следующие программы:


http://msysgit.github.io/


https://code.google.com/p/tortoisegit/wiki/Download?tm=2


21
22


Как только вы установите приложение TortoiseGit, щелкните правой кнопкой мыши на папке и выберите опцию gitClon
23


Мы вводим наше имя DNS, использующееся при работе с сервисом Azure, и выбираем наш предварительно сгенерированный секретный ключ доступа:
24


Затем нам будет предложено ввести пароль, который мы выбрали ранее для этого ключа, и, наконец, нам потребуется ввести имя пользователя. Мы выбираем имя git:
25
26


Спасибо за внимание; я надеюсь, что эта статья оказалась для вас полезной.


Любые вопросы и замечания горячо приветствуются.

Комментарии (12)


  1. dmitriylyalyuev
    25.04.2016 13:44

    Простите, но:
    1. почему 12.04, а не 14.04?
    2. почему не поставить полноценный go git service или gitlab?
    3. «Как только вы установите приложение TortoiseSVN» — так мы GIT настраиваем или SVN?


    1. Kolyuchkin
      25.04.2016 13:52

      4. Статья-туториал легко делится на две части: 1)Как запустить свой сервер на платформе Asure (коих много); 2) Как развернуть git-server на сервере (коих еще больше)…

      по п.2 + gitolite


      1. dmitriylyalyuev
        25.04.2016 13:56

        по п.2 Gitolite — это гуд. Но gogs съедает не на много больше ресурсов, при этом давая гораздо больше возможностей. GitLab ресурсов есть сильно больше, но и возможностей сильно больше.

        А поставить простой gitolite на сервер — это даже на заметку не сильно тянет (впрочем как и gogs). Но если уж писать статью, то хотя бы человеческий функционал в результате чтоб был.


        1. Kolyuchkin
          25.04.2016 14:13

          Я согласен с Вами — мой посыл был именно в тривиальности приведенного автором материала. И я привел gitolite лишь в качестве еще одной альтернативы, предложенных Вами сервисов) Gitolite я сам «поднимал на сервере», кстати, пользуясь статьями с Хабра))) (и даже в мыслях не было писать про это заметку)


      1. stasus
        25.04.2016 14:08

        Да, именно так.

        Если я хочу свой Git и не хочу использовать бесплатный PaaS Visual Studio Team Services, можно также быстро сделать своё простой Git сервер в Azure, например, используя возможности предложения Dev Essentials ($25 в месяц на Azure z на год).


    1. fOCUS_VRN
      25.04.2016 13:57
      +1

      3. Настраиваем Git конечно, на скрине видно инсталлер TortoiseGit, видимо MS просто опечатались


    1. stasus
      25.04.2016 14:06
      +1

      Эта статья именно tutorial. Если вы всё это уже делали не раз и знаете, как это делается, возможно, она будет слишком простой. Моя ошибка, забыл пометить, что этот перевод — tutorial.


    1. stasus
      25.04.2016 14:21
      +1

      Я честно скажу, что я не специалист по Git, я с SourceSafe плавно перешёл на TFS, а потом ушёл из промышленной разработки.

      Подскажите правильное направление для полезной статьи по развёртыванию, можно в личных сообщениях.


      1. Kolyuchkin
        25.04.2016 14:27

        (Только в качестве шутки и ни чего более!!!)
        Можно и эту статью сделать интересной, если она будет:
        1) «многосерийной»;
        2) содержать занудное описание и ссылку на Ваш golang-проект, автоматизирующий развертывание git-сервиса в облаке;
        3) в спойлерах «про Катю».


    1. maydjin
      25.04.2016 15:25

      >> почему не поставить полноценный go git service или gitlab
      Притом как докер контейнер, одной командой, или вообще в ui натыкать если azure так умеет :)


  1. owlet
    25.04.2016 14:15

    Складывается впечатление, что это давно написанно и выложено только сейчас.
    Ubuntu 12.04.
    TortoiseSVN 1.8.11 вместо 1.9.3.
    И главное, в Azure, используется классическая модель развертывания вместо нового Resource Manager.

    И скриншоты отвратительного качества.


  1. solver
    25.04.2016 14:59

    Автор, вы свою статью то видели после публикации?
    Вот сами сбе ответьте на простой вопрос, скриншоты с таким качеством имело смысл вообще выкладывать?