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

Dockerコマンド ~学習メモ書き

$
0
0

前提

・導入メモになります。
・いろいろ試してみたが、やっぱりHyperVがいい

準備するもの

アプリケーション側

アプリケーション側はnodejs を使用します。
今回はnode の公式リポジトリを使用するための、Dockerfile

app-server/Dockerfile
FROMnode:5RUNnpm-ginstallredisENVNODE_PATHC:\nodejs\node_modulesENTRYPOINT["node","app.js"]
app-server/src/app.js
varredis=require('redis');varredis_client=redis.createClient(6379,"noderedis");varlisten_port=10080;require('http').createServer(function(request,response){redis_client.incr('counter',function(error,reply){response.writeHead(200,{'Content-Type':'text/plain'});response.end("You accessed here "+reply+" times.\n");});}).listen(listen_port,'0.0.0.0');console.log("Server is running on port "+listen_port+".");

Docker compose ファイルの作成

docker-compose.yml
nodeapp:
  build: "./app-server"container_name: "nodeapp"working_dir: "/usr/src/app"ports:
   -"10080:10080"volumes:
   -"$PWD/app-server/src:/usr/src/app"links:
   -"noderedis"noderedis:
  image: "redis:3"container_name: "noderedis"

コンテナが起動しているかどうかを調べる

$ docker ps

コンテナが停止しているかどうかを調べる

$ docker ps -a

コンテナ起動

$ docker-compose up 

コンテナ停止

$ docker stop *contenaID*

おまけ

コンテナ削除

$ docker rm*contenaID*
$ docker-compose kill

マウントできない時に疑うポイント

参考になったURL

https://qiita.com/jusotech10/items/cb8077efb9b7a74dfdcc

まとめ

もともとインストールしてるoracleの仮想マシーンとDocker toolbox の相性が合わない⇒ 一旦両方ともアンインストールして、入れ直すときに、仮想マシーンにチェックして入れ直すとうまくいく

Windowsのドッカーのツールボックスのマウントは、
C:¥Users直下とマウントされるみたいです。

お金に余裕あるなら、Windows10proを最初に買ってHyperVの仮想環境を使うのが手っ取り早いし起動も早い。。仕事上はproなので環境周りが楽でした。ダッシュボードでコンテナ管理が使えるので便利かと思います。

前に作ったVagrantfile環境の整理したら、オラクルもドッカーもアンインストールしてモジュール置くためのディレクトリのマウントに再挑戦してみようと思います。。


Viewing all articles
Browse latest Browse all 8835

Trending Articles