【AWS】5分でEC2にswagger-uiをデプロイする | 瀬戸内の雲のように

【AWS】5分でEC2にswagger-uiをデプロイする

Posted: 2019-01-07


スポンサーリンク

目次

はじめに

APIを公開するにあたって、リファレンス(仕様書)は非常に重要になります。

基本的にユーザはリファレンスのみを見て使い方を確認しますので、それがわかりづらかったり間違っていたりするとユーザの利便性に直結してしまうためです。

さて、そんなAPIリファレンスでは swagger というソフトウェアがよく使われているようです。今回はswaggerを表示する swagger-uiをAWSにデプロイする手順を記載したいと思います。

 

手順1. EC2のデプロイ

まずEC2でサーバをデプロイします。

サイズ: t2.micro
イメージ: Amazon Linux (Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type)

 

手順2. dockerのインストール

コマンドはこんな感じです

sudo su -
yum install docker

 
こんな感じの表示が出ればOKです。

Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main                                                                                                                        | 2.1 kB  00:00:00
amzn-updates                                                                                                                     | 2.5 kB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package docker.x86_64 0:18.06.1ce-5.22.amzn1 will be installed
--> Processing Dependency: xfsprogs for package: docker-18.06.1ce-5.22.amzn1.x86_64
--> Processing Dependency: pigz for package: docker-18.06.1ce-5.22.amzn1.x86_64
--> Processing Dependency: libseccomp.so.2()(64bit) for package: docker-18.06.1ce-5.22.amzn1.x86_64
--> Processing Dependency: libltdl.so.7()(64bit) for package: docker-18.06.1ce-5.22.amzn1.x86_64
--> Running transaction check
---> Package libseccomp.x86_64 0:2.3.1-2.4.amzn1 will be installed
---> Package libtool-ltdl.x86_64 0:2.4.2-20.4.8.5.32.amzn1 will be installed
---> Package pigz.x86_64 0:2.3.3-1.6.amzn1 will be installed
---> Package xfsprogs.x86_64 0:4.5.0-9.21.amzn1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================
 Package                            Arch                         Version                                       Repository                          Size
========================================================================================================================================================
Installing:
 docker                             x86_64                       18.06.1ce-5.22.amzn1                          amzn-updates                        45 M
Installing for dependencies:
 libseccomp                         x86_64                       2.3.1-2.4.amzn1                               amzn-main                           79 k
 libtool-ltdl                       x86_64                       2.4.2-20.4.8.5.32.amzn1                       amzn-main                           51 k
 pigz                               x86_64                       2.3.3-1.6.amzn1                               amzn-main                           71 k
 xfsprogs                           x86_64                       4.5.0-9.21.amzn1                              amzn-main                          1.7 M

Transaction Summary
========================================================================================================================================================
Install  1 Package (+4 Dependent packages)

Total download size: 47 M
Installed size: 154 M
Is this ok [y/d/N]: y
Downloading packages:
(1/5): libtool-ltdl-2.4.2-20.4.8.5.32.amzn1.x86_64.rpm                                                                           |  51 kB  00:00:00
(2/5): libseccomp-2.3.1-2.4.amzn1.x86_64.rpm                                                                                     |  79 kB  00:00:00
(3/5): pigz-2.3.3-1.6.amzn1.x86_64.rpm                                                                                           |  71 kB  00:00:00
(4/5): xfsprogs-4.5.0-9.21.amzn1.x86_64.rpm                                                                                      | 1.7 MB  00:00:00
(5/5): docker-18.06.1ce-5.22.amzn1.x86_64.rpm                                                                                    |  45 MB  00:00:02
--------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                    17 MB/s |  47 MB  00:00:02
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libseccomp-2.3.1-2.4.amzn1.x86_64                                                                                                    1/5
  Installing : libtool-ltdl-2.4.2-20.4.8.5.32.amzn1.x86_64                                                                                          2/5
  Installing : pigz-2.3.3-1.6.amzn1.x86_64                                                                                                          3/5
  Installing : xfsprogs-4.5.0-9.21.amzn1.x86_64                                                                                                     4/5
  Installing : docker-18.06.1ce-5.22.amzn1.x86_64                                                                                                   5/5
  Verifying  : xfsprogs-4.5.0-9.21.amzn1.x86_64                                                                                                     1/5
  Verifying  : pigz-2.3.3-1.6.amzn1.x86_64                                                                                                          2/5
  Verifying  : libtool-ltdl-2.4.2-20.4.8.5.32.amzn1.x86_64                                                                                          3/5
  Verifying  : docker-18.06.1ce-5.22.amzn1.x86_64                                                                                                   4/5
  Verifying  : libseccomp-2.3.1-2.4.amzn1.x86_64                                                                                                    5/5

Installed:
  docker.x86_64 0:18.06.1ce-5.22.amzn1

Dependency Installed:
  libseccomp.x86_64 0:2.3.1-2.4.amzn1  libtool-ltdl.x86_64 0:2.4.2-20.4.8.5.32.amzn1  pigz.x86_64 0:2.3.3-1.6.amzn1  xfsprogs.x86_64 0:4.5.0-9.21.amzn1

Complete!

一発です。

 

手順3. dockerイメージのpull

まずdockerを起動します。

/etc/init.d/docker start
Starting cgconfig service:                                 [  OK  ]
Starting docker:        .                                  [  OK  ]

 
ついでに自動起動の設定も入れておきます

chkconfig docker on

(何も表示されなければOKです)

 
次にswagger-uiのdockerイメージをpullします。

docker pull swaggerapi/swagger-ui

こんな感じの結果が出ればOKです。

Using default tag: latest
latest: Pulling from swaggerapi/swagger-ui
cd784148e348: Pull complete
7cd9347ff112: Pull complete
7e58137a5d8a: Pull complete
98c93a8e17c8: Pull complete
354923840fe5: Pull complete
554bdb414864: Pull complete
31c6617d09d2: Pull complete
8b92e9eaf922: Pull complete
6bdf6784d0f8: Pull complete
53522e57382a: Pull complete
Digest: sha256:cde7c6e246a41060a4a1558351c50a97eb7f58615f831ff7d2e4d168a2227f2c
Status: Downloaded newer image for swaggerapi/swagger-ui:latest

 

手順4. 起動

とりあえずの起動は以下の手順です。

docker run -p 80:8080 swaggerapi/swagger-ui

この状態でウェブブラウザを開き、ec2のIPアドレスにアクセスしてみて、以下のような画面が表示されれば成功です。

picture

簡単ですが、これでswagger-uiのデプロイは完了です。


スポンサーリンク




コメント一覧


コメントを投稿する


お名前


コメント内容





TOP back