diff --git a/Dockerfile b/Dockerfile index 4c2d768..e885784 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,12 +8,12 @@ RUN mkdir -p /usr/src/nodejs/ WORKDIR /usr/src/nodejs/ # RUN/COPY是分层的,package.json 提前,只要没修改就不会重新安装包 -COPY package.json /usr/src/app/package.json -RUN cd /usr/src/app/ -RUN npm i +COPY package.json yarn.lock /usr/src/nodejs/ +RUN cd /usr/src/nodejs/ +RUN yarn install && yarn cache clean # 把当前目录下所有的文件拷贝到 Image 的 /usr/src/nodejs/目录下 COPY . /usr/src/nodejs/ -EXPOSE 30010 -CMD npm start \ No newline at end of file +EXPOSE 3000 +CMD npm start diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..fa21c8d --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,14 @@ +version: '2' +services: + webapp: + build: . + image: webapp:dockerstudy + volumes: + - ./:/usr/src/nodejs + #depends_on: + #- mongo + ports: + - 3000:3000 + container_name: dockerstudycontainer + #mongo: + #image: "mongo:latest" diff --git a/package-lock.json b/package-lock.json index 8ac666b..2d240fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "dockerStudy", + "name": "dockerstudy", "version": "0.1.0", "lockfileVersion": 1, "requires": true, @@ -1069,12 +1069,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -1089,17 +1091,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -1216,7 +1221,8 @@ "inherits": { "version": "2.0.4", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -1228,6 +1234,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -1242,6 +1249,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -1249,12 +1257,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.9.0", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -1273,6 +1283,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -1362,7 +1373,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -1374,6 +1386,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -1495,6 +1508,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -3696,6 +3710,11 @@ "resolved": "http://r.cnpmjs.org/util-deprecate/download/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, + "uuid": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-7.0.3.tgz", + "integrity": "sha1-xcnyyM8l3Ao3LE3xRBxB9b0MaAs=" + }, "vary": { "version": "1.1.2", "resolved": "http://r.cnpmjs.org/vary/download/vary-1.1.2.tgz", diff --git a/package.json b/package.json index ab5a806..2703663 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,8 @@ "koa-static": "^3.0.0", "koa-views": "^5.2.1", "mongoose": "^5.8.1", - "pug": "^2.0.0-rc.1" + "pug": "^2.0.0-rc.1", + "uuid": "^7.0.3" }, "devDependencies": { "nodemon": "^1.8.1" diff --git a/routes/index.js b/routes/index.js index 4cf24a3..4461d14 100644 --- a/routes/index.js +++ b/routes/index.js @@ -1,5 +1,6 @@ 'use strict' const router = require('koa-router')() +const User = require('../models/user') // 用于封装controllers的公共方法 var mongoose = require('mongoose') @@ -7,7 +8,6 @@ var uuid = require('uuid') router.get('/', async (ctx, next) => { // 向mongodb中添加一条数据 - const User = mongoose.model('User') const user = await User.findOne({ phoneNumber: '16677771234' }).exec()