Veletaで生成したAPIを起動する(Dockerコンテナ編)

Veletaで生成したAPIのDockerコンテナを利用する方法について説明します。

VeletaでAPIの生成が完了するとDockerコンテナのzipファイルをダウンロードすることができます。

$ ls

sampleapi.tar.zip // ダウンロードしたzipファイル

まずはダウンロードしたzipファイルを解凍してtarファイルを取り出します。

$ unzip sampleapi.tar.zip


$ ls

sampleapi.tar // 解凍後のtarファイル

次にtarファイルをdocker loadコマンドで読み込みます。

$ docker load < sampleapi.tar


$ docker image ls

REPOSITORY TAG ...
sampleapi latest ... // 読み込んだDockerイメージ

最後に読み込んだDockerイメージをコンテナとして立ち上げます。以下はコンテナを立ち上げるコマンドの例です。コマンドの詳細な解説はリファレンスを参照ください。

# PostgreSQLと通信するWebAPIを立ち上げるコマンド例

$ docker container run \
-p 3000:3000 \
-e DSN='user=user password=password host=host.example.com dbname=sample' \
-e PORT=3000 \
sampleapi

コンテナ起動時に指定できる環境変数は以下のとおりです。

環境変数

DSN

必須項目。データベースと接続するためのData Source Nameを指定します。データベースの種類に合わせてDSNを指定してください。

# PostgreSQL
DSN='user= password= host= dbname='

# MySQL
DSN='USER:PASSWORD@(HOST)/DBNAME?parseTime=true&loc=Asia%2FTokyo'

# MariaDB
DSN='USER:PASSWORD@(HOST)/DBNAME?parseTime=true&loc=Asia%2FTokyo'

# OracleDB
DSN='oracle://USER:PASSWORD@HOST:PORT/SERVICENAME'

# SQLServer
DSN='sqlserver://USER:PASSWORD@HOST:PORT?database=DBNAME

PORT

任意項目。APIサーバーのポート番号です。指定しない場合、デフォルトは3000番ポートでAPIサーバーが起動します。

 

APIサーバーの活用方法については以下の記事を参考ください。

Veletaで生成したAPIを活用する