-
front-end, back-end ๊นํ๋ธ ํด๋ก
-
npm install or yarn install
- example
C:\Users\Dos\Desktop\Projects\blockcrawl_frontend>yarn install
C:\Users\Dos\Desktop\Projects\blockcrawl_backend>yarn install
- .env ์ ํ
NAME = "DOYOUNG"
PORT = 4000
SERVER_URL = "http://localhost:4000/"
# DB_URI = "mongodb://dosimpact:589742@133.186.241.220:27017/admin"
DB_URI = "mongodb://dosimpact:589742@127.0.0.1:27017/admin"
REMOVE_FILE_TIME = 300000
HEAD_LESS = "false"
BRS_WIDTH = 1660
BRS_HEIGHT = 900
- ์คํํ๊ธฐ - yarn start | dev
- example
C:\Users\Dos\Desktop\Projects\blockcrawl_frontend>yarn start
yarn run v1.21.1
$ react-scripts start
C:\Users\Dos\Desktop\Projects\blockCrawl_backend>yarn dev
yarn run v1.21.1
$ nodemon --exec babel-node src/server.js
โ Server is running on http://localhost:4000
โ MongoDB connected...
โ puppeteer is running
์ฌ๋ฌด์ง ์
๋ฌด๋ฅผ ํ๋๋ฐ ์์ด ๋งค๋ฒ ๋ฐ๋ณต์ ์ธ ์
๋ฌด๊ฐ ์์ต๋๋ค. ๋ฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ ์ฒ๋ฆฌํ๋ ์ผ์
๋๋ค.
๋งค๋ฒ ์ด๋ฐ ๋จ์ํ๊ณ ๋์ผํ ๊ณผ์ ์ ์
๋ฌด์ ์ฒ๋ฆฌํ๊ธฐ์ํด ์
๋ฌด ์๋ํ์ ๋์ฆ๊ฐ ์ฆ๊ฐํฉ๋๋ค.
ํ์ง๋ง ์น ์๋ํ ๊ธฐ์ ์ ์ผ๋ฐ ์ฌ๋ฌด์ง ๊ทผ๋ก์๋ค์ด ๋ฐฐ์ฐ๋ ค๋ฉด ์๋นํ ๋ฌ๋ ์ปค๋ธ๊ฐ ์์ต๋๋ค.
์ธ์ด์ ์์ฒด ๊ธฐ์ด๋ฌธ๋ฒ์ ๋ฐฐ์ฐ๊ณ ๋ก์ง ๊ตฌํ์ ์ํด์๋ ์ต์ 24์๊ฐ์ ํ์ต ์๊ฐ์ด ํ์ํฉ๋๋ค.
๊ทธ๋ ๋ค๊ณ ๋จ์ํ ์๋ฃ ์กฐ์ฌ๋ฅผ ์ํด ์ธ์ฃผ ์์
์ ๋งก๊ธฐ๊ธฐ์๋ ๋ฌด๋ฆฌ๊ฐ ์์ด ๊ฒฐ๊ตญ ๋ฐ๋ณต์ ์ธ ์
๋ฌด๋ฅผ ์ง์ ํ๊ฒ๋ฉ๋๋ค.
๋ฐ๋ผ์ ๋๊ตฌ๋ ์ฝ๊ฒ GUIํ๊ฒฝ์์ ์๋ํ ๋ก์ง์ ๊ตฌํํ ์ ์๋ ๊ฐ๋ฐ ํ๋ซํผ์ ๋ง๋ค๊ฒ ๋์์ต๋๋ค.
์คํฌ๋ฆฝํธ ์ฝ๋ ์์ฑ์์ด ๋๊ตฌ๋ ์์ฝ๊ฒ ๊ต์ก์ฉ ๋ธ๋ก์ฝ๋ฉ์ผ๋ก
์๋ํ ์ํํธ์จ์ด๋ฅผ ๋ง๋ค์ด ๋ณผ ์ ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ ๋ง๋ ๋ธ๋ก ๋ก์ง์ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ๊ณ ๋ฐ์ดํฐ ๋ถ์์ด ๊ฐ๋ฅํ ํด๋ผ์ฐ๋ ํ๋ซํผ์ด ์ต์ข
๋ชฉํ์
๋๋ค.
1. ๋ธ๋ก์ฝ๋ฉ ์์คํ
์ ์์ฑํ์ฌ ์น๋ฌธ์์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ , ์ด๋ฏธ์ง ๋ฐ PDF ์ ๋ณด๋ ์์งํ ์ ์์ต๋๋ค.
2. ๋น
๋ฐ์ดํฐ ์์ง์ ์ํ ์์คํ
์ ๋ง๋ค๊ณ ์์ง๋ ์ ๋ณด๋ฅผ ์์
๋ก ๋ค์ด๋ฐ์ ์ ์์ต๋๋ค.
๋ธ๋ก์ฝ๋ฉ์ผ๋ก
์น์๋ํ ๋ก์ง๊ตฌํ ๊ฐ๋ฅ
GoToPage
ํน์ URLํ์ด์ง ์ด๋
Get Selector
HTML ๋ฐ์ดํฐ ์์ง
Get PDF/IMG
ํ์ฌ ํ์ด์ง๋ฅผ PDF,IMG๋ก ๋ณํ
๋ค์์ ULR ๊ณผ ํ์ด์ง๋น ํ
๊ทธ ์
๋ ฅํ์ฌ ์์
๋ฐ์ดํฐ ์ถ์ถ์ด ๊ฐ๋ฅํฉ๋๋ค.
์์
๊ธ์ต๋ฐ์ดํฐ ์์ง
์ปค๋ฎค๋ํฐ์ฌ์ดํธ ๋ฐ์ดํฐ ์์ง
- STEP1 .dockerignore
node_modules
build
.dockerignore
Dockerfile
Dockerfile.prod
- STEP2 DockerFile
FROM node:carbon
RUN mkdir -p /app
WORKDIR /app
ADD ./ /app
ENV NODE_ENV=production
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json /app/package.json
RUN npm install --silent
RUN npm install react-scripts@3.4.1 -g
EXPOSE 3000
CMD npm start
- STEP3 build docker file
docker build -t ehdudtkatka/bc_front:0.0.4 .
- STEP4 execution docker image
docker run --name bc_front -itd -p 80:3000 ehdudtkatka/bc_front:0.4
- STEP5 check container and monit
docker run --name bc_front -itd -p 80:3000 ehdudtkatka/bc_front:0.4
docker attach -it blockcrawl_front_server bash
- STEP1 .dockerignore
node_modules
build
.dockerignore
Dockerfile
Dockerfile.prod
- STEP2 DockerFile
FROM node:10.20.1-slim@sha256:05d1d270480b6e99753076b6656bb5a37edb7ca31af20c008568a556bc82d2a8
RUN apt-get update
RUN apt-get install -y wget gnupg ca-certificates \
&& wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \
&& sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
RUN apt-get update \
&& apt-get install -y google-chrome-unstable fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst fonts-freefont-ttf \
--no-install-recommends \
&& rm -rf /var/lib/apt/lists/* \
&& wget --quiet https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh -O /usr/sbin/wait-for-it.sh \
&& chmod +x /usr/sbin/wait-for-it.sh
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
ENV PATH=/usr/src/app/node_modules/.bin:$PATH
COPY package.json /usr/src/app/package.json
RUN npm install --silent
COPY . /usr/src/app
EXPOSE 4000
CMD npm run start
- STEP3 build docker file
docker build -t ehdudtkatka/bc_back:0.4 .
- STEP4 execution docker image
docker run --name bc_back -itd -p 4000:4000 ehdudtkatka/bc_back:0.4
- STEP5 check container and monit
docker run --name bc_back -itd -p 4000:4000 ehdudtkatka/bc_back:0.4
docker attach -it bc_back bash
PC ๋น๋
Chrome ์น ์ดํ๋ฆฌ์ผ์ด์
Node.js Win32/64 ๋ฐ์คํฌํฑ ์ดํ๋ฆฌ์ผ์ด์
๊ธฐ์ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
Front React JS, Hook , Apollo Client, Blockly, Redux
Back Node.js, Express, Graphql-yoga, multer/s3, puppeteer, Prisma
Devops NCP,Docker, Netlify, AWS S3,
๊นํ๋ธ ์ฃผ์
https://github.com/DosImpact/blockCrawl_frontend
https://github.com/DosImpact/blockCrawl_backend
์ฌ์ดํธ ์ฃผ์
์น์ฌ์ดํธ LiveDemo : http://133.186.241.220
์ฌ์ฉ์ ๊ฐ๋ฐ์ ํ
์คํธ ๊ฐ์ด๋
https://drive.google.com/file/d/1PRBB5QHYw0ZnwUi3E5V3t8-hyRpMkq1E/view?usp=sharing