Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8873

【docker】Node.jsのコンテナ立ち上げてサンプルアプリを動かしたい

$
0
0

この記事の目標

dockerのコンテナ立ち上げて、このアプリ↓をローカル環境で立ち上げる

https://github.com/justadudewhohacks/face-api.js

GitHubからリポジトリcloneする

ローカルの任意のディレクトリにcloneする

$ git clone https://github.com/justadudewhohacks/face-api.js

docker hubからnode.jsのイメージpullしてくる

alpineが軽量でオススメらしいので、v14のをpullする

$ docker pull node:14-alpine

イメージをpullできたことの確認

$ docker images

コンテナ立ち上げる

docker run -it-v$PWD:/workspace -p 8100:3000 --name node-face-api node:14-alpine /bin/ash
  • -itで、コンテナ内で入力可能な状態にする
  • -v $PWD:/workspaceで、カレントディレクトリのファイルをコンテナ内の「workspace」ディレクトリにマウントするように指定
    • そのため、リポジトリをcloneしたディレクトリで作業する必要あり
    • $PWD$(pwd)といった指定方法もありらしい
  • -p 8100:3000で、ホスト側のポート8100とコンテナ側のポート3000を繋ぐ
    • このホスト側のポート番号は空いているものを適宜使う
    • コンテナ側はよしなに設定
    • ポート使用状況はMacの場合「ネットワークユーティリティ」で確認できる
  • --name node-face-apiで、コンテナ名を「node-face-api」に設定
  • node:14-alpineで、イメージとバージョン(TAG?)の指定
  • /bin/ashで、コンテナ内で使うコマンドを指定

今回は使ってないが、以下のオプションもよく使われる

  • --rmで、コンテナから出た時にコンテナ削除

※ちなみに、コマンドの記述順は、以下の通りらしい

$ docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

起動時にエラーが起こって上手くコンテナに入れなかった場合、以下の手順でコンテナ削除し、
runコマンド見直してから再度試す

# コンテナ一覧表示$ docker ps -a# 起動(作成)に失敗したコンテナのIDを指定してコンテナ削除$ docker rm[CONTAINER ID]

コンテナ内でアプリケーションを立ち上げる

コンテナ作成して中に入ると、ホストのファイル群がworkspaceディレクトリ内にあるはずなので、確認する

$ cd workspace
$ ls

あとは、face-ap.jsのチュートリアル通りに進めていくだけ

$ cd examples/examples-browser
$ npm install$ npm start

ホストマシンのポートは8100に指定したので、以下にアクセス

http://localhost:8100/

それっぽいページが表示されればOK!

参考


Viewing all articles
Browse latest Browse all 8873

Trending Articles