-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.html
More file actions
78 lines (68 loc) · 20.1 KB
/
index.html
File metadata and controls
78 lines (68 loc) · 20.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Heroku</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="theme-color" content="#2B3A42">
<link rel="shortcut icon" href="/assets/favicon.ico">
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,600|Source+Sans+Pro:200,400,400i,500" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css" />
<link href="/093c5e94a96399fbbcb5.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
</head>
<body>
<div id="site" class="site"><div class="interactive" id="components/navigation/navigation.jsx" data-props="{"sections":[{"title":"Get-Started","url":"get-started","pages":[{"title":"Installation","url":"get-started/installation"},{"title":"Running","url":"get-started/running"},{"title":"Project Overview","url":"get-started/overview"}]},{"title":"Guides","url":"guides","pages":[{"title":"asdf","url":"guides/asdf"}]},{"title":"Developing","url":"developing","pages":[{"title":"developing/01_Adding_a_Route","url":"developing/01_Adding_a_Route"}]},{"title":"Deployment","url":"deployment","pages":[{"title":"deployment/gcloud-deployment","url":"deployment/gcloud-deployment"}]},{"title":"Examples","url":"examples","pages":[{"title":"Heroku Deploy","url":"examples/Heroku_Deployment"},{"title":"IIS","url":"examples/IIS"}]},{"title":"Generators","url":"generators","pages":[{"title":"App","url":"generators/app"},{"title":"Route","url":"generators/route"},{"title":"Service","url":"generators/service"},{"title":"Component","url":"generators/component"},{"title":"Controller","url":"generators/controller"},{"title":"Decorator","url":"generators/decorator"},{"title":"Directive","url":"generators/directive"},{"title":"Endpoint","url":"generators/endpoint"},{"title":"Filter","url":"generators/filter"},{"title":"Heroku","url":"generators/heroku"},{"title":"Openshift","url":"generators/openshift"}]},{"title":"Other","url":"/","pages":[]}],"pageUrl":"generators/heroku"}"><header class="navigation"><div class="container navigation__inner"></div></header></div><div class="interactive" id="components/sidebar-mobile/sidebar-mobile.jsx" data-props="{"sections":[{"title":"Get-Started","url":"get-started","pages":[{"title":"Installation","url":"get-started/installation"},{"title":"Running","url":"get-started/running"},{"title":"Project Overview","url":"get-started/overview"}]},{"title":"Guides","url":"guides","pages":[{"title":"asdf","url":"guides/asdf"}]},{"title":"Developing","url":"developing","pages":[{"title":"developing/01_Adding_a_Route","url":"developing/01_Adding_a_Route"}]},{"title":"Deployment","url":"deployment","pages":[{"title":"deployment/gcloud-deployment","url":"deployment/gcloud-deployment"}]},{"title":"Examples","url":"examples","pages":[{"title":"Heroku Deploy","url":"examples/Heroku_Deployment"},{"title":"IIS","url":"examples/IIS"}]},{"title":"Generators","url":"generators","pages":[{"title":"App","url":"generators/app"},{"title":"Route","url":"generators/route"},{"title":"Service","url":"generators/service"},{"title":"Component","url":"generators/component"},{"title":"Controller","url":"generators/controller"},{"title":"Decorator","url":"generators/decorator"},{"title":"Directive","url":"generators/directive"},{"title":"Endpoint","url":"generators/endpoint"},{"title":"Filter","url":"generators/filter"},{"title":"Heroku","url":"generators/heroku"},{"title":"Openshift","url":"generators/openshift"}]},{"title":"Other","url":"/","pages":[]}]}"><nav class="sidebar-mobile"><div class="sidebar-mobile__toggle"></div><div class="sidebar-mobile__content"><i class="sidebar-mobile__close icon-cross"></i><div class="sidebar-mobile__section "><a href="/get-started" class="sidebar-mobile__section-header"></a><a href="/get-started/installation" class="sidebar-mobile__page "></a><a href="/get-started/running" class="sidebar-mobile__page "></a><a href="/get-started/overview" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="/guides" class="sidebar-mobile__section-header"></a><a href="/guides/asdf" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="/developing" class="sidebar-mobile__section-header"></a><a href="/developing/01_Adding_a_Route" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="/deployment" class="sidebar-mobile__section-header"></a><a href="/deployment/gcloud-deployment" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="/examples" class="sidebar-mobile__section-header"></a><a href="/examples/Heroku_Deployment" class="sidebar-mobile__page "></a><a href="/examples/IIS" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="/generators" class="sidebar-mobile__section-header"></a><a href="/generators/app" class="sidebar-mobile__page "></a><a href="/generators/route" class="sidebar-mobile__page "></a><a href="/generators/service" class="sidebar-mobile__page "></a><a href="/generators/component" class="sidebar-mobile__page "></a><a href="/generators/controller" class="sidebar-mobile__page "></a><a href="/generators/decorator" class="sidebar-mobile__page "></a><a href="/generators/directive" class="sidebar-mobile__page "></a><a href="/generators/endpoint" class="sidebar-mobile__page "></a><a href="/generators/filter" class="sidebar-mobile__page "></a><a href="/generators/heroku" class="sidebar-mobile__page "></a><a href="/generators/openshift" class="sidebar-mobile__page "></a></div><div class="sidebar-mobile__section "><a href="//" target="_blank" class="sidebar-mobile__section-header"></a></div></div></nav></div><div class="container page"><aside class="sidecar"><a href="//github.com/angular-fullstack/generator-angular-fullstack" target="_blank" class="sidecar__link sidecar__link--github"><span class="sidecar__label">Fork the Repo</span><i class="sidecar__icon icon-github"></i></a><a class="sidecar__link sidecar__link--gitter js-gitter-toggle-chat-button"><span class="sidecar__label">Find Help</span><i class="sidecar__icon icon-gitter"></i></a><a href="//stackoverflow.com/questions/tagged/generator-angular-fullstack" target="_blank" class="sidecar__link sidecar__link--so"><span class="sidecar__label">Stack Overflow</span><i class="sidecar__icon icon-stack-overflow"></i></a></aside><div class="interactive" id="components/sidebar/sidebar.jsx" data-props="{"sectionName":"generators","pages":[{"url":"generators/app","title":"App","anchors":[{"title":"App","id":"app"}]},{"url":"generators/route","title":"Route","anchors":[{"title":"Route","id":"route"}]},{"url":"generators/service","title":"Service","anchors":[{"title":"Service","id":"service"}]},{"url":"generators/component","title":"Component","anchors":[{"title":"Component","id":"component"}]},{"url":"generators/controller","title":"Controller","anchors":[{"title":"Controller","id":"controller"}]},{"url":"generators/decorator","title":"Decorator","anchors":[{"title":"Decorator","id":"decorator"}]},{"url":"generators/directive","title":"Directive","anchors":[{"title":"Directive","id":"directive"}]},{"url":"generators/endpoint","title":"Endpoint","anchors":[{"title":"Endpoint","id":"endpoint"}]},{"url":"generators/filter","title":"Filter","anchors":[{"title":"Filter","id":"filter"}]},{"url":"generators/heroku","title":"Heroku","anchors":[{"title":"Heroku","id":"heroku"},{"title":"Setup","id":"setup"},{"title":"Pushing Updates","id":"pushing-updates"}]},{"url":"generators/openshift","title":"Openshift","anchors":[{"title":"Openshift","id":"openshift"}]}],"currentPage":"generators/heroku"}"><nav class="sidebar"><div class="sidebar__inner"><h3 class="sidebar-item__version">Version 4.1.x</h3><div class="sidebar-item sidebar-item--empty "><a href="/generators" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"></ul></div><div class="sidebar-item "><a href="/generators/app" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/app#app">App</a></li></ul></div><div class="sidebar-item "><a href="/generators/route" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/route#route">Route</a></li></ul></div><div class="sidebar-item "><a href="/generators/service" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/service#service">Service</a></li></ul></div><div class="sidebar-item "><a href="/generators/component" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/component#component">Component</a></li></ul></div><div class="sidebar-item "><a href="/generators/controller" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/controller#controller">Controller</a></li></ul></div><div class="sidebar-item "><a href="/generators/decorator" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/decorator#decorator">Decorator</a></li></ul></div><div class="sidebar-item "><a href="/generators/directive" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/directive#directive">Directive</a></li></ul></div><div class="sidebar-item "><a href="/generators/endpoint" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/endpoint#endpoint">Endpoint</a></li></ul></div><div class="sidebar-item "><a href="/generators/filter" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/filter#filter">Filter</a></li></ul></div><div class="sidebar-item sidebar-item--open"><a href="/generators/heroku" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="#heroku">Heroku</a></li><li class="sidebar-item__anchor"><a href="#setup">Setup</a></li><li class="sidebar-item__anchor"><a href="#pushing-updates">Pushing Updates</a></li></ul></div><div class="sidebar-item "><a href="/generators/openshift" class="sidebar-item__title"></a><i class="sidebar-item__toggle icon-chevron-down"></i><ul class="sidebar-item__anchors"><li class="sidebar-item__anchor"><a href="/generators/openshift#openshift">Openshift</a></li></ul></div></div></nav></div><section class="page__content"><h1>Heroku</h1><a class="page__edit" href="https://github.com/angular-fullstack/generator-angular-fullstack/edit/master/docs/content/generators/heroku.md">Edit this Page   <i class="icon-edit"></i></a><div><h3 class="header"><a class="anchor" href="#heroku" id="heroku"></a><span class="text">Heroku</span><a class="icon-link" href="#heroku"></a></h3>
<h4 class="header"><a class="anchor" href="#setup" id="setup"></a><span class="text">Setup</span><a class="icon-link" href="#setup"></a></h4>
<p>You need a <a href="https://www.heroku.com">Heroku</a> account and have the <a href="https://devcenter.heroku.com/articles/getting-started-with-nodejs#set-up">Heroku Toolbelt</a> installed. </p>
<p>Create an app on Heroku and give it a name (e.g. myapp) :</p>
<pre><code>heroku apps:create myapp
</code></pre><p>You can also use Heroku dashboard to create an app. </p>
<p>If you're using mongoDB you will need to add a database to your app (e.g. <a href="https://mlab.com/">mlab</a> or <a href="https://www.compose.com/mongodb">compose</a>):
Here we use mlab:</p>
<pre><code>heroku addons:create mongolab
</code></pre><p>Now, build your app by running: </p>
<pre><code>gulp build
</code></pre><p>This creates a folder called <code>dist</code>. </p>
<p>Now go to <code>dist</code> and set it up as a git repository:</p>
<pre><code><span class="token function">git</span> init
</code></pre><p>Add Heroku's app as your <code>dist</code> folder's remote repository:</p>
<pre><code>heroku git:remote -a myapp
</code></pre><p>It is time to push your local repository to Heroku. From your app's root run:</p>
<pre><code>gulp buildcontrol:heroku
</code></pre><p>Your app should be live now. To view your app run:</p>
<pre><code>heroku <span class="token function">open</span>
</code></pre><p>Note on MongoDB setup: if you get an <code>Error: No valid replicaset instance servers found</code> you need to modify moongose connection options in config/environment/production.js as follows: </p>
<pre><code>options: <span class="token punctuation">{</span>
db: <span class="token punctuation">{</span>
safe: true,
replset: <span class="token punctuation">{</span> socketOptions: <span class="token punctuation">{</span> keepAlive: 1, connectTimeoutMS: 30000 <span class="token punctuation">}</span> <span class="token punctuation">}</span>,
server: <span class="token punctuation">{</span> socketOptions: <span class="token punctuation">{</span> keepAlive: 1, connectTimeoutMS: 30000 <span class="token punctuation">}</span> <span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
</code></pre><p>One of the odd things about the Node driver is that the default timeout for replica set connections is only 1 second, so make sure you're setting it to something more like 30s like in this example.</p>
<p>></p>
<blockquote>
<p>If you're using any oAuth strategies, you must set environment variables for your selected oAuth. For example, if we're using <strong>Facebook</strong> oAuth we would do this :</p>
<pre><code>heroku config:set FACEBOOK_ID<span class="token operator">=</span>id
heroku config:set FACEBOOK_SECRET<span class="token operator">=</span>secret
</code></pre><p>You will also need to set <code>DOMAIN</code> environment variable:</p>
<pre><code>heroku config:set DOMAIN<span class="token operator">=</span><span class="token operator"><</span>your-heroku-app-name<span class="token operator">></span>.herokuapp.com
<span class="token comment" spellcheck="true"># or (if you're using it):</span>
heroku config:set DOMAIN<span class="token operator">=</span><span class="token operator"><</span>your-custom-domain<span class="token operator">></span>
</code></pre></blockquote>
<h4 class="header"><a class="anchor" href="#pushing-updates" id="pushing-updates"></a><span class="text">Pushing Updates</span><a class="icon-link" href="#pushing-updates"></a></h4>
<pre><code>gulp build
</code></pre><p>Commit and push the resulting build, located in your dist folder:</p>
<pre><code>gulp buildcontrol:heroku
</code></pre></div><hr style="display:none;"><h3 style="display:none;">Contributors</h3><noscript></noscript></section></div><div class="footer"><div class="container footer__inner"><section class="footer__left"><a href="/get-started" class="footer__link">Get Started</a><a href="https://github.com/angular-fullstack" target="_blank" class="footer__link">Organization</a><a href="https://github.com/angular-fullstack/generator-angular-fullstack/blob/master/contributing.md" target="_blank" class="footer__link">Contribute</a></section><section class="footer__middle"><a href="/" class="footer__icon"><img src="/44c8aeaa24cb28d0a5c6a45de449fd7d.svg"></a></section><section class="footer__right"><a href="https://gitter.im/angular-fullstack/generator-angular-fullstack" target="_blank" class="footer__link">Support</a><a href="https://github.com/angular-fullstack/generator-angular-fullstack/releases" target="_blank" class="footer__link">Changelog</a></section></div></div><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create', 'UA-46921629-2', 'auto');ga('send', 'pageview');</script></div>
<script src="/a303720ddb31757c65167dfdb35eafdc.js"></script>
<script>
((window.gitter = {}).chat = {}).options = {
room: 'angular-fullstack/generator-angular-fullstack',
activationElement: false
};
</script>
<script src="https://sidecar.gitter.im/dist/sidecar.v1.js" async defer></script>
</body>
</html>