diff --git a/Dockerfile b/Dockerfile index 8ebd297..3f0d57e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,8 +6,17 @@ RUN apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys B97 RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" > /etc/apt/sources.list.d/pgdg.list RUN apt-get update && apt-get install -y python-software-properties software-properties-common postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3 USER postgres -RUN /etc/init.d/postgresql start &&\ - createdb api -O postgres +RUN /etc/init.d/postgresql start &&\ + createdb api -O postgres &&\ + psql -c "ALTER USER postgres WITH PASSWORD 'pgroot'" &&\ + psql -d api -c 'CREATE TABLE "Users" ( + id serial NOT NULL, + "name" character varying (255), + "email" character varying (255), + "password" character varying(255), + "createdAt" timestamp with time zone NOT NULL, + "updatedAt" timestamp with time zone NOT NULL + );' RUN echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.3/main/pg_hba.conf RUN echo "listen_addresses='*'" >> /etc/postgresql/9.3/main/postgresql.conf EXPOSE 5432 @@ -23,5 +32,4 @@ RUN npm install COPY . /usr/src/ts-api EXPOSE 4000 - CMD npm run watch diff --git a/README.md b/README.md index 11c1b69..4425370 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ * gulp * PostgreSQL * Sequelize +* Docker ## Getting Started Clone this repo: @@ -29,5 +30,4 @@ Tests: npm run test ``` - License: MIT diff --git a/server/models/user.ts b/server/models/user.ts index 82718b5..4fc9f71 100644 --- a/server/models/user.ts +++ b/server/models/user.ts @@ -2,7 +2,7 @@ import * as bcrypt from 'bcrypt'; export default function(sequelize, DataTypes) { var User = sequelize.define('User', { id: { - type: DataTypes.STRING, + type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true }, diff --git a/server/modules/User/routes.ts b/server/modules/User/routes.ts index 75daa82..0643d10 100644 --- a/server/modules/User/routes.ts +++ b/server/modules/User/routes.ts @@ -9,7 +9,6 @@ export default class UserRoutes { } index(req:Request, res:Response) { - console.log('oi') return UserCtlr.getAll(req, res); } diff --git a/server/server.ts b/server/server.ts index 50e9fde..ccdb881 100644 --- a/server/server.ts +++ b/server/server.ts @@ -2,7 +2,7 @@ import * as http from 'http'; import * as debug from 'debug'; import Api from './api/api'; import {errorHandlerApi} from './api/errorHandlerApi'; - +var models = require('./models'); debug('ts-api:server'); const port = normalizePort(process.env.PORT || 3000); @@ -10,10 +10,11 @@ const port = normalizePort(process.env.PORT || 3000); Api.set('port', port); const server = http.createServer(Api); -server.listen(port); - -server.on('error', onError); -server.on('listening', listen); +models.sequelize.sync().then(() => { + server.listen(port); + server.on('error', onError); + server.on('listening', listen); +}); Api.use(errorHandlerApi); @@ -21,6 +22,7 @@ function listen():void { let address = server.address(); let bind = (typeof address === 'string') ? `Address ${address}` : `Port ${address.port}`; debug(`Server is runnig on port ${bind}`); + console.log(`Server is runnig on port ${bind}`); } function onError(error: NodeJS.ErrnoException): void { diff --git a/server/sql_script/userTable b/server/sql_script/userTable deleted file mode 100644 index e16b045..0000000 --- a/server/sql_script/userTable +++ /dev/null @@ -1,8 +0,0 @@ -CREATE TABLE "Users" ( - id serial NOT NULL, - "name" character varying (255), - "email" character varying (255), - "password" character varying(255), - "createdAt" timestamp with time zone NOT NULL, - "updatedAt" timestamp with time zone NOT NULL -)