diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000000000000000000000000000000000000..3c3629e647f5ddf82548912e337bea9826b434af --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +node_modules diff --git a/.env.example b/.env.example new file mode 100644 index 0000000000000000000000000000000000000000..f754650de6c4b29f7f9e7a3336191da8f405f71c --- /dev/null +++ b/.env.example @@ -0,0 +1,6 @@ +MYSQL_HOST=mysql +MYSQL_USER=user +MYSQL_USERNAME=user +MYSQL_DATABASE=tubes-db +MYSQL_PASSWORD=rootpw +MYSQL_ROOT_PASSWORD=rootpw diff --git a/.gitignore b/.gitignore index b9470778764f72c5257a3361590d2994547f90e1..1b9599dbfb10ed27bdae298ab8daeff9f20480dd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ node_modules/ dist/ +.env +mysql diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..2893c2e4e9905e5aa79afcf40f11b617ebedb2f4 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM node:16-alpine + +WORKDIR /rest + +COPY . . +RUN npm install + +EXPOSE 5000 +CMD ["npm", "run", "dev"] + diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..d16e18bb808589304731e65e9b29f8b4ead2120f --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,30 @@ +version: '3.9' + +services: + rest-service: + image: if3110-2023-02-36-rest-service:latest + ports: + - 5000:5000 + env_file: .env + build: + context: . + dockerfile: Dockerfile + volumes: + - '.:/rest' + + mysql: + image: 'mysql' + ports: + - "5307:3306" + env_file: .env + volumes: + - ./mysql:/var/lib/mysql + + phpmyadmin: + image: phpmyadmin:latest + environment: + - PMA_HOST=mysql + ports: + - 5051:80 + depends_on: + - mysql \ No newline at end of file diff --git a/index.ts b/index.ts index fd1e028b761b17f2eedbdf69a598c54fe0f5ac82..217261daff874c082b1a88d6b9a8c0aa94c26ad8 100644 --- a/index.ts +++ b/index.ts @@ -1,17 +1,21 @@ import express, {Express, Request, Response} from "express"; const app = express(); -const port = 8000; - -console.log("tes") +const port = 5000; app.get("/", (req, res) => { - res.send("MEMEK jawsdjah"); + res.send("test get home"); +}) + +app.get("/test", (req, res) => { + res.send("test get"); }) -app.get("/kon", (req, res) => { - res.send("Kontolodon!!"); +app.post("/test", (req, res) => { + res.send("test post ganti gak"); }) app.listen(port, () =>{ console.log(`listening on port ${port}`); -}) \ No newline at end of file +}) + +console.log("successfully started") \ No newline at end of file diff --git a/scripts/build-image.sh b/scripts/build-image.sh new file mode 100644 index 0000000000000000000000000000000000000000..60ee0416926a9d0243fc823f5a570d06170f64d4 --- /dev/null +++ b/scripts/build-image.sh @@ -0,0 +1 @@ +docker build -t if3110-2023-02-36-rest-service:latest . \ No newline at end of file