본문 바로가기

AWS

[CICD / ECS] CodePipeline으로 ECS Fargate 배포 자동화 #2 - 도커 빌드 및 테스트 배포

반응형

간단하게 Local에서 docker가 정상 작동하는지 확인해 볼 예정이다.

 

 

❯ cat server.js
'use strict';

const express = require('express');

// Variables
const PORT = 8080;
const HOST = '0.0.0.0';

// Application
const app = express();
app.get('/', (req, res) => {
    res.send("Hello world " + process.env.HELLO + " v1");
});

app.listen(PORT, HOST);
console.log(`Running on http://${HOST}:${PORT}`)


❯ cat Dockerfile
FROM node:12

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

ENV HELLO 1234

COPY . .

EXPOSE 8080
CMD ["node", "server.js"]%


❯ docker build -t test_nodejs_app:v1 .

 

❯ docker run -d --rm -p 80:8080 --name test_nodejs_app test_nodejs_app:v1
edb6c788dad22a2aa515eed4fc16d98920e9df11cdd5b376a4ed445a356bb7ae

 

 

Localhost에서 docker 컨테이너로 접근한 모습

 

 

이 프로세스를 AWS ECS Fargate를 통해 컨테이너로 배포하며, CodeBuild 및 CodeDeploy를 통해 배포 자동화를 해볼 예정이다.

반응형