0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

DockerでNode.js環境構築

Posted at

概要

DockerfileDocker-composeを使って簡単にnode.jsの環境を作る。

ディレクトリ構造

node_app
├─ Dockerfile
└─ docker-compose.yml

Dockerfile の記載

Dockerfile
#イメージを指定
FROM node:12.4.0-alpine

# 環境変数を定義
ENV NODE_ENV=development

# 雛形パッケージのインストール
RUN npm install -g express-generator

# 初期カレントディレクトリ
WORKDIR /app

# 開放ポート
EXPOSE 3000

docker-compose.yml の記載

docker-compose.yml
version: '3.7'
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: node
    volumes:
      - ./app:/app
    ports:
      - "8080:3000"

context ディレクトリの指定 「 . 」 で同じディレクトリ

container_name コンテナネームの指定

volumes データーのマウント共有の指定 左がホスト 右がコンテナ

ports コンテナとホストのポートをつなげる指定

Dockerfile からイメージのビルド

$ docker-compose build

コンテナを生成、起動

-d (デタッチ オプション)でバックグラウンドで起動

$ docker-compose up -d

コンテナに接続

-i(--interactive)標準入力を設定させ、コマンドを対話的にする
-t(--tty)疑似ターミナルの割り当て

$ docker exec -it [CONTAINER_ID] bash

express-generator で雛形の作成

今回はテンプレートエンジンはejsを使用

# express --view=ejs /app

パッケージのインストール

# npm install

サーバーを起動

# npm start

local hostに接続して Welcome to Express! と表示されれば完成です。

参考本

Docker ドキュメント
Docker/Kubernetes 実践コンテナ開発入門

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?