Article d'introduction sur heroku Je vois souvent ruby et node.js sur OSX. Non.
--En Python --Sur Win7
Commençons par un tel endroit. Comme objectif, je ne vais pas aux applications ou à quelque chose comme ça. Jusqu'à ce que quelque chose soit affiché.
documentation d'introduction officielle de heroku Python https://devcenter.heroku.com/articles/getting-started-with-python C'est aussi un mémo d'expérience (cependant, je ne mange que les pièces dont je pense avoir besoin).
Téléchargez-le ici et installez-le.
https://www.python.org/downloads/
Ici, j'ai mis 2.7.11 qui était le dernier en 2 séries à ce moment. (Pour CG, je pense qu'il est préférable de faire correspondre la version avec Python dans l'outil principal. Ici, je me suis précipité sans y penser. Puis j'ai pensé plus tard que je mettrais en 3 séries)
Ajoutez-le à la variable d'environnement Windows PATH.
C:\Python27;C:\Python27\Scripts;
En fait, cette fois, j'ai oublié de faire ça à mi-chemin et je l'ai rendu normal (?) Du milieu. Donc, à mi-chemin, cela peut inclure des erreurs qui ne se sont pas produites lorsque vous avez fait cela pour la première fois. Il peut ne pas être inclus.
Si vous voulez l'ajouter avec une commande, c'est setx
python
> setx /?
Il y a trois façons d'utiliser SetX:
Syntaxe 1:
SETX [/Système S[/U [domaine\]utilisateur[/P [mot de passe]]]]Valeur variable[/M]
Syntaxe 2:
SETX [/Système S[/U [domaine\]utilisateur[/P [mot de passe]]]]
variable/Chemin du registre K[/M]
Syntaxe 3:
SETX [/Système S[/U [domaine\]utilisateur[/P [mot de passe]]]]
/Dossier F{variable{/A x,y | /R x,chaîne y}[/M] | /X} [/Délimiteur D]
La description:
Créer des variables d'environnement ou créer des variables d'environnement dans l'environnement utilisateur ou système
changement. Arguments, clés de registre ou entrée de fichier
Vous pouvez définir des variables en fonction de celui-ci.
(Omission)
virtualenv Vous avez dit que vous aviez besoin de virtualenv, alors je vais le mettre.
python
Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:32:19) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pip
>>> pip.main(["list"])
pip (7.1.2)
setuptools (18.2)
0
>>> pip.main(["install","virtualenv"])
Collecting virtualenv
Downloading virtualenv-13.1.2-py2.py3-none-any.whl (1.7MB)
100% |################################| 1.7MB 271kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-13.1.2
0
>>>
Vous pouvez généralement utiliser pip install virtualenv
, mais
Ici via le module pip de Python.
Il existe un programme d'installation appelé ** heroku Toolbelt ** qui contient heroku et un ensemble d'outils associés.
https://toolbelt.heroku.com/
Le contenu est git et ruby.
↓ Il sera installé à cet emplacement et ajouté à votre PATH.
Technical details
The heroku client will be installed into C:\Program Files\Heroku and will be added to your %PATH%.
Au moment de l'installation, avez-vous attendu un moment au dernier git? Ce sera le cas, mais vous n'avez pas à avoir peur.
git À ce stade, git est également inclus. Je vais vérifier. Avec des problèmes émotionnels.
git -h
.
git-h
C:\Users\{user}>git -h
Unknown option: -h
usage: git [--version] [--help] [-C <path>] [-c name=value]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]
HM.
getting-started Suivez la procédure ci-dessous.
https://devcenter.heroku.com/articles/getting-started-with-python
heroku Immédiatement après l'installation de Toolbelt "Une fois installé, vous pouvez l'utiliser avec la commande
heroku
!" Cela dit quelque chose comme Quoi qu'il en soit, je l'ai vu et exécuté innocemment avec «heroku». Fait.
Puis quelque chose comme l'initialisation a couru, J'attends depuis un moment à cause de l'ajout de dépendances ou quelque chose. Attendons. J'étais bouleversé parce que je pensais avoir fait quelque chose de mal. Je n'ai pas à attendre une minute. Chaque fois que j'attends dans un endroit inattendu, j'ai peur. À cause d'une petite personne
D'ailleurs, dans le journal à ce moment, la fenêtre se fermait automatiquement une fois l'initialisation terminée. Il n'y en a pas (Parce qu'il a été ouvert avec win key> heroku)
connexion heroku
Il vous sera alors demandé l'adresse e-mail et le mot de passe de votre compte heroku.
python
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\{user}>heroku login
Enter your Heroku credentials.
Email: [email protected]
Password (typing will be hidden):
Logged in as [email protected]
Oui. On dirait.
heroku version
python
C:\Users\{user}>heroku version
heroku/toolbelt/3.42.29 (i386-mingw32) ruby/2.1.7
heroku-cli/4.27.13-9dddf39 (386-windows) go1.5.3
=== Installed Plugins
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
Je continue en lisant ceci (▼)
http://developers.mobage.jp/blog/how-to-use-for-beginners-heroku
C'est le contenu écrit dans [2] là-bas.
Créez un dossier que vous souhaitez utiliser comme atelier cette fois et déplacez-le.
python
C:\Users\{user}>cd C:\Users\{user}\Documents\path\to\heroku_proj
C:\Users\{user}\Documents\path\to\heroku_proj>mkdir testapp
C:\Users\{user}\Documents\path\to\heroku_proj>cd testapp
C:\Users\{user}\Documents\path\to\heroku_proj\testapp>
Vous obtiendrez ** python-getting-started ** publié sur github.
git clone https: // github.com / heroku / python-getting-started.git
python
C:\Users\{user}\Documents\path\to\heroku_proj\testapp>git clone https://github.com/heroku/python-getting-started.git
Cloning into 'python-getting-started'...
remote: Counting objects: 204, done.
emote: Total 204 (delta 0), reused 0 (delta 0), pack-reused 204Receiving objects
Receiving objects: 75% (153/204)
Receiving objects: 100% (204/204), 32.17 KiB | 0 bytes/s, done.
Resolving deltas: 100% (91/91), done.
Checking connectivity... done.
Puis déplacez-vous avec cd
python
C:\Users\{user}\Documents\path\to\heroku_proj\testapp>cd python-getting-started
C:\Users\{user}\Documents\path\to\heroku_proj\testapp\python-getting-started>
À partir de maintenant, veuillez comprendre que toutes les commandes sont exécutées à partir de C: \ Users \ {user} \ Documents \ path \ to \ heroku_proj \ testapp \ python-getting-started>
.
Imakoko
https://devcenter.heroku.com/articles/getting-started-with-python#deploy-the-app
heroku create
.
python
>heroku create
Creating app... done, stack is cedar-14
https://ancient-taiga-0000.herokuapp.com/ | https://git.heroku.com/ancient-taiga-0000.git
** Qu'est-ce que la taïga ancienne 0000? ** ** Est-ce un terme de cuisine soudain? Je pense, mais si vous ne décidez pas du nom lors de la création, il semble que ** il le nommera automatiquement **. Est-ce que ça va parce que c'est un test?
Si vous le nommez correctement
heroku create your-app-name
de cette façon.
Ou vous pouvez vous connecter à heroku via un navigateur et changer à partir de là (pas fait)
Voici une expérience git soudaine.
git push heroku master
Cela prend environ 1 à 2 minutes.
python
>git push heroku master
Counting objects: 204, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (98/98), done.
Writing objects: 100% (204/204), 32.16 KiB | 0 bytes/s, done.
Total 204 (delta 91), reused 204 (delta 91)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Installing runtime (python-2.7.11)
remote: -----> Installing dependencies with pip
remote: Collecting dj-database-url==0.3.0 (from -r requirements.txt (line 1))
remote: Downloading dj_database_url-0.3.0-py2.py3-none-any.whl
remote: Collecting Django==1.9.1 (from -r requirements.txt (line 2))
remote: Downloading Django-1.9.1-py2.py3-none-any.whl (6.6MB)
remote: Collecting gunicorn==19.4.5 (from -r requirements.txt (line 3))
remote: Downloading gunicorn-19.4.5-py2.py3-none-any.whl (112kB)
remote: Collecting psycopg2==2.6.1 (from -r requirements.txt (line 4))
remote: Downloading psycopg2-2.6.1.tar.gz (371kB)
remote: Collecting whitenoise==2.0.6 (from -r requirements.txt (line 5))
remote: Downloading whitenoise-2.0.6-py2.py3-none-any.whl
remote: Installing collected packages: dj-database-url, Django, gunicorn, psycopg2, whitenoise
remote: Running setup.py install for psycopg2
remote: Successfully installed Django-1.9.1 dj-database-url-0.3.0 gunicorn-19.4.5 psycopg2-2.6.1 whitenoise-2.0.6
remote:
remote: -----> Preparing static assets
remote: Running collectstatic...
remote: Post-processed 'admin/js/vendor/xregexp/LICENSE-XREGEXP.txt' as 'admin/js/vendor/xregexp/LICENSE-XREGEXP.d64cecf4f157.txt'
(Omis)
remote: Post-processed 'lang-logo.png' as 'lang-logo.019c8743b7cf.png'
remote: 58 static files copied to '/app/staticfiles', 58 post-processed.
remote:
remote: -----> Discovering process types
remote: Procfile declares types -> web
remote:
remote: -----> Compressing... done, 42.1MB
remote: -----> Launching...
remote: Released v4
remote: https://ancient-taiga-0000.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy.... done.
To https://git.heroku.com/ancient-taiga-0000.git
* [new branch] master -> master
>
** requirements.txt ** est placé dans python-getting-started, Au cours du processus ci-dessus, il est lu et installé avec pip.
Ensuite, heroku ps: scale web = 1
.
python
>heroku ps:scale web=1
Scaling dynos... done, now running web at 1:Free.
de
heroku open
python
>heroku open
Opening ancient-taiga-0000... done
Ensuite, le navigateur sera lancé et l'application (ici * Ancient-taiga-0000.herokuapp.com *) sera ouverte.
Hmm.
Jusque là
--Préparation --Faire une application heroku --Déployez et exécutez sur heroku
J'ai pu expérimenter ...
Imakoko
https://devcenter.heroku.com/articles/getting-started-with-python#view-logs
heroku logs --tail
Si vous ajoutez --tail
, les logs seront acquis de plus en plus en temps réel. Lors de l'arrêt, Ctl + C
python
>heroku logs --tail
2016-01-17T13:37:24.947150+00:00 heroku[api]: Enable Logplex by [email protected]
2016-01-17T13:37:24.947150+00:00 heroku[api]: Release v2 created by [email protected]
2016-01-17T13:40:12.180138+00:00 heroku[api]: Attach DATABASE resource by [email protected]
2016-01-17T13:40:12.180177+00:00 heroku[api]: Release v3 created by [email protected]
2016-01-17T13:40:12.470201+00:00 heroku[api]: Scale to web=1 by [email protected]
2016-01-17T13:40:12.529336+00:00 heroku[api]: Deploy fe7f948 by [email protected]
2016-01-17T13:40:12.529336+00:00 heroku[api]: Release v4 created by [email protected]
2016-01-17T13:40:12.842955+00:00 heroku[slug-compiler]: Slug compilation started
2016-01-17T13:40:12.842964+00:00 heroku[slug-compiler]: Slug compilation finished
2016-01-17T13:40:15.096972+00:00 heroku[web.1]: Starting process with command `gunicorn gettingstarted.wsgi --log-file -`
2016-01-17T13:40:16.642246+00:00 app[web.1]: [2016-01-17 13:40:16 +0000] [3] [INFO] Listening at: http://0.0.0.0:10178 (3)
2016-01-17T13:40:16.642313+00:00 app[web.1]: [2016-01-17 13:40:16 +0000] [3] [INFO] Using worker: sync
2016-01-17T13:40:16.640646+00:00 app[web.1]: [2016-01-17 13:40:16 +0000] [3] [INFO] Starting gunicorn 19.4.5
2016-01-17T13:40:16.645613+00:00 app[web.1]: [2016-01-17 13:40:16 +0000] [9] [INFO] Booting worker with pid: 9
2016-01-17T13:40:16.684880+00:00 app[web.1]: [2016-01-17 13:40:16 +0000] [10] [INFO] Booting worker with pid: 10
2016-01-17T13:40:17.171330+00:00 heroku[web.1]: State changed from starting to up
(ry
2016-01-17T13:45:25.167623+00:00 app[web.1]: Not Found: /favicon.ico
Si vous essayez d'arrêter avec ctl + c, vous verrez ce qui suit
python
! Command cancelled.
Voulez-vous mettre fin au travail par lots(Y/N)? y
>
Procfile Imakoko
https://devcenter.heroku.com/articles/getting-started-with-python#define-a-procfile
Il est placé directement sous "Getting-started-with-python" qui a été cloné par git. Je voudrais en savoir plus sur ** Procfile file **.
Sur github, ce
https://github.com/heroku/python-getting-started/blob/master/Procfile
Dans l'état initial, le contenu est comme ça
web: gunicorn gettingstarted.wsgi --log-file -
Il semble que vous écrivez clock: ~~
lorsque vous voulez qu'heroku le traite automatiquement.
C'est un fichier qui écrit de tels paramètres.
ps Imakoko
https://devcenter.heroku.com/articles/getting-started-with-python#scale-the-app
heroku ps
, essayez-le.
python
>heroku ps
=== web (Free): gunicorn gettingstarted.wsgi --log-file -
web.1: up 2016/01/17 22:40:17 (~ 18m ago)
>
heroku run ~~
Il semble que quelque chose puisse être fait avec heroku run ~~
python
>heroku run
! Usage: heroku run COMMAND
!
! Example: heroku run bash
>
J'ai besoin de quelque chose après "run". .. .. Au fait, je n'ai pas aidé heroku depuis que j'ai commencé à travailler dessus, alors je vais l'essayer ici.
python
>heroku -h
Usage: heroku COMMAND [--app APP] [command-specific-options]
Primary help topics, type "heroku help TOPIC" for more details:
addons # manage add-on resources
apps # manage apps (create, destroy)
auth # authentication (login, logout)
config # manage app config vars
domains # manage domains
logs # display logs for an app
ps # manage dynos (dynos, workers)
releases # manage app releases
run # run one-off commands (console, rake)
sharing # manage collaborators on an app
Additional topics:
2fa # manage two-factor authentication settings
buildpacks # manage the buildpack for an app
certs # manage ssl endpoints for an app
drains # display drains for an app
features # manage optional features
fork # clone an existing app
git # manage local git repository for app
help # list commands and display help
keys # manage authentication keys
labs # manage optional features
local # run heroku app locally
login # Login with your Heroku credentials.
maintenance # manage maintenance mode for an app
members # manage membership in organization accounts
orgs # manage organization accounts
pg # manage heroku-postgresql databases
pgbackups # manage backups of heroku postgresql databases
plugins # manage plugins to the heroku gem
regions # list available regions
spaces # manage heroku private spaces
stack # manage the stack for an app
status # Status of Heroku Platform
twofactor # manage two-factor authentication settings
update # update the heroku client
version # display version
Listez vos applications
heroku apps
>heroku apps
=== My Apps
ancient-taiga-0000
Bien sûr, il n'y en a qu'un à l'heure actuelle.
heroku apps:info
>heroku apps:info
=== ancient-taiga-0000
Addons: heroku-postgresql:hobby-dev
Dynos: web: 1
Git URL: [email protected]:ancient-taiga-0000.git
Owner: [email protected]
Region: us
Repo Size: 36 kB
Slug Size: 42 MB
Stack: cedar-14
Web URL: https://ancient-taiga-0000.herokuapp.com/
Vous pouvez vérifier le type de module complémentaire que vous utilisez et l'URL d'accès. En parlant de cela, ** La région, c'est nous **.
heroku plugins
python
>heroku plugins
=== Installed Plugins
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
heroku addons
>heroku addons
Add-on Plan Price
─────────────────────────────────────────────── ───────── ──
───
heroku-postgresql (postgresql-dimensional-7392) hobby-dev free
└─ as DATABASE
The table above shows add-ons and the attachments to the current app (ancient-taiga-0000) or other apps.
Ouvrez la page de l'add-on
>heroku addons:open heroku-postgresql
Opening heroku-postgresql (postgresql-dimensional-7392) for ancient-taiga-0000... done
Ensuite, cela a été ouvert ↓
https://postgres.heroku.com/databases
[email protected] does not exist or cannot be accessed by this account
Est-ce vrai.
À propos, certains modules complémentaires ne seront pas installés à moins que vous ne vérifiiez votre compte. En bref, veuillez enregistrer vos informations de paiement (carte de crédit) Il paraît que.
※référence: Créez un service Twitter ToDo avec Unfiltered + Heroku (essayez d'utiliser le module complémentaire heroku, le fichier de configuration et la mise à l'échelle) @ Mei Noshi http://mao-instantlife.hatenablog.com/entry/20120310/1331388396
Si vous ignorez l'enregistrement des informations de paiement et essayez d'ajouter un module complémentaire, vous vous comporterez ainsi.
Je le savais!
heroku releases
>heroku releases
=== ancient-taiga-0000 Releases
v4 Deploy fe7f948 [email protected] 2016/01/17 22:40:12 (~ 2h ago)
v3 Attach DATABASE resource [email protected] 2016/01/17 22:40:12 (~ 2h ago)
v2 Enable Logplex [email protected] 2016/01/17 22:37:24 (~ 2h ago)
v1 Initial release [email protected] 2016/01/17 22:37:24 (~ 2h ago)
heroku config
>heroku config
=== ancient-taiga-0000 Config Vars
DATABASE_URL: postgres://abcdefghijklmn:GaEMJZBYWhqmI9xXOOudegwpxf@ec2-54-83-61-45.compute-1.amazonaws.com:5432/d7vc7kpol1v9vn
Ça fait longtemps, donc une fois. ~~ Si vous pouvez écrire la seconde moitié, je vais coller le lien ~~> J'ai écrit la seconde moitié
http://qiita.com/it_ks/items/ca6c7f6e8fc89e49e46d