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 1 year has passed since last update.

Docker-compose3でnode.js&mongodb&nginxの環境を整える

Posted at

はじめに

 これはある記事を参考にnode.jsとmongodbとnginxのDocker環境をcomposeでめっちゃお手軽に作ったろ、とか思ったらエラーしたため案外悪戦苦闘してしまった人のお話です。
 そのため、ほとんど内容は書かず、下に貼ってあるサイトに丸投げします。
 ただ一点、エラーの発生する場所だけ書きますのであらかじめご理解を。

(この記事を書いてるEchizenって人なんですが、一応何かしら言っといたほうがいいのかしらん?)

[参考]

環境

22/05/21
・CentOS7
・Docker 1.13.1
・Docker-compose 1.18.0

docker-compose.yml

 参考のサイトを進めていけば適当なディレクトリ構成でnode.jsとmongodbとnginxが使える環境が作れるはずなのですが、最後の最後に書かれているdocker-compose.ymlはコピ&ペするだけではエラーが発生してしまいます。

image.png

    ↑これです
 僕がエラーを出してしまった場所はインデントとバージョンの指定のようです。
 よって以下のように書き換えます。

version: '3'

services:
   nginx:
     build: ./nginx
     container_name: nginx
     depends_on:
       - server
     ports:
       - 8080:80

   server:
     build: ./server
     container_name: server
     depends_on:
       - mongo

   mongo:
     image: mongo
     container_name: mongo
     environment:
       MONGO_INITDB_DATABASE: admin
     volumes:
       - ./mongo/init.js:/docker-entrypoint-initdb.d/init.js:ro
       - ./mongo/mongo-data:/data/db
     # Start mongo with authentication enabled
     command: [mongod, --auth]

 変更点は先ほど言った通り、ヘッドに書き加えたのと、インデントを変えたのです。

最後に

 どうしてコピペしても出来なかったんだろう???
 記事を書く際にインデントが変更されてしまっていたのか、それともDocker-composeのバージョンが違ったのか。まぁそれは僕にはわからないことです。
 ともかく、こうすれば少なくともnode.jsとmongodbとnginxの環境が整えられると思います。さーこれでnode.jsでサーバーアプリを作れるぞー!

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?