LoginSignup
6
5

More than 3 years have passed since last update.

AzureでCentOSを立ち上げ、Dockerをインストールする

Last updated at Posted at 2019-08-05

概要

Azureで仮想マシンを作成しCentOSをインストールします。その後、CentOSにDocker CEをインストールしDockerコンテナを作成します。

0.前提条件

  • Azureのアカウントを作成していること
    (Azureのアカウントはhttps://azure.microsoft.com/ja-jp/ に移動し、「無料ではじめる」をクリックして作成します)
  • ターミナルソフト(Teratermなど)をインストールしていること

1.Azure-CLIのインストール

  1. https://docs.microsoft.com/ja-jp/cli/azure/install-azure-cli?view=azure-cli-latest からOSに対応したOSのAzure-CLIをインストールする。
    (本記事ではWindows10を使用して記載致します)

  2. ダウンロードした「azure-cli-<バージョン名>.msi」を起動する。
    013.jpg

  3. 「I accept the terms in the License Agreement」にチェックを入れて「Install」をクリックする。
    014.JPG

  4. Azure-CLIがインストールされるので待機する。
    015.JPG

  5. インストールが完了した画面が表示されるので「Finish」をクリックする。
    016.JPG

  6. コマンドプロンプトまたはPower Shellを起動する。
    017.jpg

  7. Azure-CLIのバージョン情報を表示し、インストールされたことを確認する。

> az --version
azure-cli                         2.0.70

command-modules-nspkg               2.0.3
core                              2.0.70
nspkg                              3.0.4
telemetry                          1.0.3

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\xxxx\.azure\cliextensions'

Python (Windows) 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 02:47:15) [MSC v.1900 32 bit (Intel)]

Legal docs and information: aka.ms/AzureCliLegal


Your CLI is up-to-date.

2.CentOSの仮想マシンを作成する

a.ブラウザ(GUI)から作成する

  1. https://azure.microsoft.com/ja-jp/ に移動し「ポータル」をクリックする。
    020.JPG

  2. Azureのログイン画面が表示されるので、使用するアカウントを選択しログインを実施する。
    021.JPG

  3. Azureポータルに移動したことを確認する。
    「Virtual Machines」をクリックする。
    022.JPG

  4. 上部メニューから「追加」をクリックする。
    023.JPG

  5. 「プロジェクトの詳細」にて「サブスクリプション」と「リソースグループ」を選択する。
    リソースグループを作成していない場合は下部にある「新規作成」をクリックする。
    024.JPG

  6. 「新規作成」をクリックした場合は、「名前」に作成するリソースグループ名を入力し、「OK」をクリックする。
    026.JPG

  7. 「インスタンスの詳細」にて下記の情報を入力する。

    • 仮想マシン名:<作成する名前>を入力
    • 地域:「(アジア太平洋)東日本」を選択
    • 可用性オプション:「インフラストラクチャ冗長は必要ありません」を選択
    • イメージ:「CentOS-based 7.5」を選択
    • サイズ:「サイズを変更します」をクリックし、「VMサイズ」を選択する
      (本記事では「Standard B2s」のVMサイズを使用します) 029.JPG 028.JPG
  8. 「管理者アカウント」にて「認証の種類」を選択し、必須項目を入力する。

    • パスワード:設定したパスワードで仮想マシン上のCentOSにログインする
    • SSH公開キー:RSA公開鍵を利用して仮想マシン上のCentOSにログインする 030.JPG
  9. 「受信ポートの規則」にて下記の情報を選択する。

    • パブリック受信ポート:選択したポートを許可する
    • 受信ポートを選択:SSH 031.JPG
  10. ディスクやネットワークなどの詳細な設定変更を実施しない場合は「確認および作成」をクリックする。
    031_2.jpg

  11. 「認証に成功しました」と表示されたことを確認する。
    その後、下にスクロールして設定した情報が正しければ「作成」をクリックする。
    042.JPG

  12. 「デプロイが進行中です」と表示されるので待機する。
    048.JPG

  13. 「デプロイが完了しました」と表示されたことを確認する。
    「リソースに移動」をクリックする。
    049.JPG

  14. 作成した仮想マシンの情報が表示される。
    「パブリックIPアドレス」をコピーする。
    050.JPG

  15. 端末にインストールされているターミナルソフトを起動する。

  16. ターミナルソフトにコピーした「パブリックIPアドレス」を入力する。
    (ターミナルソフトの種類によって設定方法が異なります)
    071.JPG

  17. 「ユーザ名」「パスワード」(SSH公開キーで作成した場合は公開鍵認証を実施)を入力してSSH接続を実施する。
    (ターミナルソフトの種類によって設定異なります)
    073.JPG

  18. ログインできたことを確認する。
    075.JPG

  19. CentOSのバージョン確認を実施する。

    $ uname -a
    Linux CentOS-Docker 3.10.0-862.11.6.el7.x86_64 #1 SMP Tue Aug 14 21:49:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    
    $ cat /etc/redhat-release
    CentOS Linux release 7.5.1804 (Core)
    

b.コマンドで作成する

  1. Aureにログインする。

    > az login
    Note, we have launched a browser for you to login. For old experience with device code, use "az login --use-device-code"
    
  2. WEBブラウザが立ち上がりログイン画面が表示される。
    アカウントを選択してログインを実施する。
    077.JPG

  3. 「You have logged into Microsoft Azure!」と表示されたことを確認する。
    078.JPG

  4. Power Shell(またはコマンドプロンプト)に戻り、ログイン情報が表示されたことを確認する。

    You have logged in. Now let us find all the subscriptions to which you have access...
    [
        {
            "cloudName": "AzureCloud",
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "isDefault": true,
            "name": "無料試用版",
            "state": "Enabled",
            "tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "user": {
            "name": "xxxx@xxxx.com",
            "type": "user"
            }
        }
    ]
    
  5. リソースグループを確認する。

    > az group list
    [
        {
            "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/xxxx",
            "location": "japaneast",
            "managedBy": null,
            "name": "xxxx",
            "properties": {
            "provisioningState": "Succeeded"
            },
            "tags": null,
            "type": null
        },
        {
            "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/xxxx",
            "location": "japaneast",
            "managedBy": null,
            "name": "xxxx",
            "properties": {
            "provisioningState": "Succeeded"
            },
            "tags": null,
            "type": null
        }
    ]
    
  6. リソースグループが存在しない場合は下記のコマンドを実行してリソースグループを作成する。

    az group create --name <リソースグループ名> --location <地域>
    
    > az group create --name Azure-CLI-Group --location japaneast
    {
        "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/Azure-CLI-Group",
        "location": "japaneast",
        "managedBy": null,
        "name": "Azure-CLI-Group",
        "properties": {
            "provisioningState": "Succeeded"
        },
        "tags": null,
        "type": null
    }
    
  7. 下記のコマンドを実行して仮想マシンを作成する。

    az vm create --resource-group <リソースグループ名> --name <作成する仮想マシン名> --image <OSの種類> --admin-username <ユーザ名> --generate-ssh-keys
    
    > az vm create --resource-group Azure-CLI-Group --name cli-docker-centos --image CentOS --admin-username centoscliuser --generate-ssh-keys
    
  8. コマンド実行後、「- Runnning ...」と表示されるので待機する。

  9. 仮想マシンが作成されたことを確認する。

    SSH key files 'C:\Users\xxxx\.ssh\id_rsa' and 'C:\Users\xxxx\.ssh\id_rsa.pub' have been generated under ~/.ssh to allow SSH access to the VM. If using machines without permanent storage, back up your keys to a safe location.
    {
        "fqdns": "",
        "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/Azure-CLI-Group/providers/Microsoft.Compute/virtualMachines/cli-docker-centos",
        "location": "japaneast",
        "macAddress": "xx-xx-xx-xx-xx-xx",
        "powerState": "VM running",
        "privateIpAddress": "xxx.xxx.xxx.xxx",
        "publicIpAddress": "xxx.xxx.xxx.xxx",
        "resourceGroup": "Azure-CLI-Group",
        "zones": ""
    }
    
  10. ターミナルソフトにコピーした「パブリックIPアドレス」を入力する。
    (ターミナルソフトの種類によって設定方法が異なります)

  11. 公開鍵認証を実施してSSH接続を実施する。
    (ターミナルソフトの種類によって設定異なります)

  12. ログインできたことを確認する。

  13. CentOSのバージョン確認を実施する。

    $ uname -a
    Linux cli-docker-centos 3.10.0-862.11.6.el7.x86_64 #1 SMP Tue Aug 14 21:49:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    
    $ cat /etc/redhat-release
    CentOS Linux release 7.5.1804 (Core)
    

3.Docker-CEのインストール

  1. 依存関係のモジュールをインストールする。

    $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    
  2. Docker-CEがインストールできるようにDocker-CEのリポジトリを追加する。

    $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
  3. Docker-CEをインストールする。(自動的にDockerの最新版がインストールされる)

    $ sudo yum install -y docker-ce
    
  4. Docker-CEがインストールされていることを確認する。

    $ docker --version
    Docker version 19.03.1, build 74b1e89
    

4.Docker-CEの起動

  1. Docker-CEを起動する。

    $ sudo systemctl start docker
    
  2. Docker-CEが起動したことを確認する。

    $ systemctl status docker
    ● docker.service - Docker Application Container Engine
    Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
    Active: active (running) since Sun 2019-08-04 15:53:39 UTC; 1min 16s ago
        Docs: https://docs.docker.com
    Main PID: 46620 (dockerd)
        Tasks: 10
    Memory: 40.0M
    CGroup: /system.slice/docker.service
            mq46620 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd....
    

5.Docker-CEでCentOSのコンテナを作成する

  1. CentOSのDockerイメージをダウンロードする。

    $ sudo docker pull centos
    Using default tag: latest
    latest: Pulling from library/centos
    8ba884070f61: Pull complete
    Digest: sha256:a799dd8a2ded4a83484bbae769d97655392b3f86533ceb7dd96bbac929809f3c
    Status: Downloaded newer image for centos:latest
    docker.io/library/centos:latest
    
  2. CentOSのDockerイメージがダウンロードされたことを確認する。

    $ sudo docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    centos              latest              9f38484d220f        4 months ago        202MB
    
  3. CentOSのDockerコンテナを作成する。

    $ sudo docker run -d --privileged -h centos_test --name centos_container centos /sbin/init
    4245d260886b6ba3bbd6f41e3bb7e8fe50fcf73696d2523f2fd03ff89c47fcbf
    
  4. Dockerコンテナ内にあるCentOSのコンソール画面に入る。

    $ sudo docker exec -it centos_container /bin/bash
    [root@centos_test /]#
    
  5. Dockerコンテナ内にあるCentOSに入ったことを確認する。

    [root@centos_test /]# uname -a
    Linux centos_test 3.10.0-862.11.6.el7.x86_64 #1 SMP Tue Aug 14 21:49:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    [root@centos_test /]# cat /etc/redhat-release
    CentOS Linux release 7.6.1810 (Core)
    [root@centos_test /]# hostname
    centos_test
    [root@centos_test /]# whoami
    root
    

最後に

Azureで仮想マシンを作成し、仮想マシン上でDockerを稼働させることができます。これによりAzureの課金が発生してしまいますが、クラウド上で常にDockerを起動させ続けることができます。

6
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5