mirror of
https://github.com/zhigang1992/react-navigation.git
synced 2026-02-09 22:51:57 +08:00
Deploy to Heroku using Docker
This commit is contained in:
@@ -10,8 +10,8 @@ cd website
|
||||
|
||||
npm run build
|
||||
|
||||
NOW=`pwd`/node_modules/.bin/now
|
||||
|
||||
cd build
|
||||
|
||||
$NOW -t $NOW_TOKEN --force && sleep 5 && $NOW -t $NOW_TOKEN alias
|
||||
docker login -e $HEROKU_LOGIN -u $HEROKU_LOGIN -p $HEROKU_API_KEY registry.heroku.com
|
||||
docker build . -t registry.heroku.com/react-navigation/web
|
||||
docker push registry.heroku.com/react-navigation/web
|
||||
|
||||
@@ -131,6 +131,33 @@ recursive(paths.appBuild, (err, fileNames) => {
|
||||
2
|
||||
)
|
||||
);
|
||||
|
||||
fs.writeFileSync(
|
||||
path.join(paths.appBuild, 'Dockerfile'),
|
||||
`
|
||||
FROM mhart/alpine-node:8.7.0
|
||||
|
||||
ENV NODE_ENV production
|
||||
|
||||
RUN apk add --update curl tini && \
|
||||
curl -o /bin/yarn https://nightly.yarnpkg.com/yarn-1.2.1-20171019.2356.js && \
|
||||
chmod +x /bin/yarn
|
||||
|
||||
RUN adduser -D myuser && mkdir -p /opt/app && chown -R myuser /opt/app
|
||||
|
||||
ADD package.json /opt/app/package.json
|
||||
RUN cd /opt/app && yarn
|
||||
|
||||
ADD . /opt/app
|
||||
WORKDIR /opt/app
|
||||
|
||||
RUN chown -R myuser /opt/app && chmod -R 777 /opt/app
|
||||
|
||||
USER myuser
|
||||
|
||||
CMD ["node", "/opt/app/lib/Server.js"]
|
||||
`
|
||||
);
|
||||
});
|
||||
|
||||
// Print a detailed summary of build files.
|
||||
|
||||
@@ -76,6 +76,7 @@ const app = express();
|
||||
app.get('/', AppHandler);
|
||||
app.use(express.static(join(__dirname, '../public')));
|
||||
app.get('*', AppHandler);
|
||||
app.listen(3000, () => {
|
||||
console.log('Started on 3000!');
|
||||
const PORT = process.env.PORT || 3000;
|
||||
app.listen(PORT, () => {
|
||||
console.log(`Started on ${PORT}!`);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user