From acb30e70172e148688e03b130666f1936b286f4a Mon Sep 17 00:00:00 2001 From: "S.long" Date: Thu, 7 May 2020 12:13:18 +0700 Subject: [PATCH] test --- Dockerfile | 14 ++++++++++++++ build.sh | 9 +++++++++ hook.sh | 17 +++++++++++++++++ server.js | 2 +- server.package.json | 35 +++++++++++++++++++++++++++++++++++ src/App.js | 2 +- test1.txt | 0 7 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 Dockerfile create mode 100755 build.sh create mode 100644 hook.sh create mode 100644 server.package.json create mode 100644 test1.txt diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..c697bb9 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM node:13.14.0-alpine3.10 +WORKDIR /home/app/app +COPY build public +COPY ./server.js ./server.js +COPY ./server.package.json ./package.json +ENV PORT=8000 + +RUN npm install express + +CMD npm run start + +EXPOSE 8000 + + diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..73f8a5b --- /dev/null +++ b/build.sh @@ -0,0 +1,9 @@ +yarn build + +heroku login + +heroku container:login + +heroku container:push web + +heroku container:release web diff --git a/hook.sh b/hook.sh new file mode 100644 index 0000000..c021815 --- /dev/null +++ b/hook.sh @@ -0,0 +1,17 @@ +@!/bin/sh + +API_KEY=d282975b-22ba-48f1-9bbe-a1a22bec5543 + +echo "Push Project To Heroku" + +echo "-- Start Login Heroku Containers Registry" +HEROKU_API_KEY=$API_KEY heroku container:login + +echo "-- Start Push App To Heroku" +HEROKU_APP_KEY=$API_KEY heroku container:push web + +echo "-- Start Release App on Heroku" +HEROKU_API_KEY=$API_KEY heroku container:release web + +echo "-- Open Browser Result " +HEROKU_API_KEY=$API_KEY heroku open diff --git a/server.js b/server.js index a84d7c6..3df3b2d 100644 --- a/server.js +++ b/server.js @@ -1,7 +1,7 @@ const path = require('path'); const express = require('express'); const app = express(); -const publicPath = path.join(__dirname, '.', 'build'); +const publicPath = path.join(__dirname, '.', 'public'); const port = process.env.PORT || 3000; app.use(express.static(publicPath)); app.get('*', (req, res) => { diff --git a/server.package.json b/server.package.json new file mode 100644 index 0000000..5ac3108 --- /dev/null +++ b/server.package.json @@ -0,0 +1,35 @@ +{ + "name": "react-heroku", + "version": "0.1.0", + "private": true, + "dependencies": { + "@testing-library/jest-dom": "^4.2.4", + "@testing-library/react": "^9.3.2", + "@testing-library/user-event": "^7.1.2", + "react": "^16.13.1", + "react-dom": "^16.13.1", + "react-scripts": "3.4.1" + }, + "scripts": { + "start-app": "react-scripts start", + "build": "react-scripts build", + "test": "react-scripts test", + "eject": "react-scripts eject", + "start": "node server.js" + }, + "eslintConfig": { + "extends": "react-app" + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + } +} diff --git a/src/App.js b/src/App.js index 2a3eec8..f14b903 100644 --- a/src/App.js +++ b/src/App.js @@ -4,7 +4,7 @@ import './App.css'; function App() { return ( -

React My

+

React My DOCKER Second Time

) return ( diff --git a/test1.txt b/test1.txt new file mode 100644 index 0000000..e69de29