Thursday, October 20, 2016

Heroku Druk Binary Options

Ek het op die oomblik die nuutste weergawe van my kode op 'n ander rekenaar wat ek wil ontwikkel uit (rekenaar by die huis en 'n skootrekenaar vir wanneer Im uit en oor) stel ek tot heroku vir my artikels op my laptop. Nou moet ek my kode assosieer op my lessenaar sodat ek kan stoot om heroku daarvandaan sowel. Dit is wat ek kry van my lessenaar: Ek kan doen heroku skep, want dit 'n aparte app sal skep. Hoe kan ek geassosieer die bestaande kode met (of trek 'n splinternuwe weergawe van) heroku Wat is die opdrag om hierdie Eerste van alles te doen, sal jy wil hê dat die instruksies Quick Start vir Heroku wat jy reguit uit die perd se bek kan kry volg, hier: devcenter. heroku / artikels / Quick Start Sodra youve gekry deur stap 3, hier kom terug. Dan kan jy hierdie tipe in die command line: heroku git: kloon - a myapp Dan, as jy wil hê dat die databasis te gryp, hier is 'n paar opsies. Nuwer Heroku instruksies op die invoer / uitvoer: devcenter. heroku / artikels / heroku-postgres-invoer en uitvoer As jy 'Mongo, dit is 'n nuttige hulpmiddel om jou Mongo databasis sinchroniseer: GitHub / Pedro / heroku-Mongo-syncreadme As jy eers nodig om die jeug van Heroku kry, kloon jou app. Om dit te doen, skryf in jou terminale: As jy reeds die app en die afgeleë om heroku volg die volgende stappe. Indien nie, kan jy die instruksies hier kyk devcenter. heroku / artikels / SVK Vind die naam van jou databasis Skryf in jou terminale: dit sal soos volg lyk: Vind die naam van jou plaaslike databasis in jou Rails app gaan na config / databasis. yml dit sal lyk iets soos hierdie: Kloon jou produksie databasis (PostgreSQL) Skryf in jou terminale met jou eie databasis name: HEROKUPOSTGRESQLMAROONURL is 'n voorbeeld van hoe kon die naam van jou produksie databasis (in Heroku) wees: myappnamedevelopment is die naam van jou ontwikkeling databasis (plaaslik) thenameofmyapp is die naam van jou artikels in Heroku Moenie vergeet om hierdie klaar met bondel install. Assuming jy gebruik git om jou projek te bestuur, veranderinge aan te pas om te Heroku deur hulle stoot. Dit kan lyk iets soos hierdie: Dit stoot die meester tak van jou git projek om Heroku. Om jou inligting op Heroku afskakel, kan jy twee dinge doen: Dit blyk heeltemal van die aansoek. Jy kan ook sit dit in die onderhoud af, wat net verkeer verhoed om dit: Dit gesê, jy hoef nie jou jeug af te draai op Heroku terwyl plaaslik ontwikkel. Die twee omgewings is heeltemal onafhanklik van mekaar. Wanneer jy 'n verandering te maak, druk net die SVK bewaarplek om heroku weer met git druk heroku meester. Die bediener sal outomaties herlaai met die veranderde stelsel. Dit lyk of jy 'n wanopvatting het. Jy kan altyd jou plaaslike ontwikkeling bediener loop, ongeag van wat Heroku doen (tensy 'n ander diens jou app verbind tot verward sou word, natuurlik, maar as dit gebeur, is daar waarskynlik iets fout met jou ontwerp). Nietemin, as jy wil hê dat die aansoek op Heroku stop, net skaal dit tot nul web dynos: heroku PS: skaal web0. beantwoord 9 Junie 14 aan 01:23 Jou Antwoord 2016 stapel Exchange, IncVagrant Druk Heroku Strategie Heroku is 'n openbare Paas verskaffer wat maak dit maklik om 'n aansoek in te sit. Die Swerwer Push Heroku strategie stoot jou application39s kode vir Heroku. Waarskuwing: Die Swerwer Druk Heroku strategie vereis dat jy jou Heroku geloofsbriewe ingestel en het die Heroku aansoek. Hierdie dokumentasie sal dek nie hierdie voorvereistes, maar jy kan meer oor hulle te lees in die Heroku dokumentasie. Slegs lêers wat verbind is tot die Git bewaarplek sal gestoot word om Heroku. Daarbenewens is die huidige werk tak altyd gestoot om die Heroku, selfs al is dit nie die quotmasterquot tak. Die Swerwer Push Heroku strategie ondersteun die volgende verstellings opsies: jeug - die naam van die Heroku aansoek. As die Heroku aansoek bestaan ​​nie, sal 'n uitsondering word opgewek. As hierdie waarde nie gespesifiseer word nie, is die base name van die gids wat die Vagrantfile aanvaar dat die naam van die Heroku aansoek wees. Aangesien dit waarde kan verander tussen gebruikers, word dit sterk aanbeveel dat jy die jeug stel by jou Vagrantfile. r - Die hoofdmap met die Git bewaarplek te laai na Heroku. Standaard is dit dieselfde gids as die Vagrantfile, maar jy kan dit spesifiseer as jy 'n geneste Git gids. afgeleë - Die naam van die SVK afgeleë waar Heroku is ingestel. Die standaard waarde is quotherokuquot. Gebruik Die Swerwer Druk Heroku strategie word gedefinieer in die Vagrantfile met behulp van die heroku sleutel: En dan druk die aansoek om Heroku: Configuration en Config Vars Laaste opgedateer op 30 September 2016 Inhoudsopgawe 'n gegewe kodebasis kan talle ontplooi het: 'n produksie-aanleg, 'n aanbieding webwerf, en 'n aantal plaaslike omgewings in stand gehou deur elke ontwikkelaar. 'N open source app kan honderde of duisende ontplooi het. Hoewel alle aktiewe dieselfde kode, elk van hierdie ontplooi het omgewingspesifieke konfigurasies. Een voorbeeld sou geloofsbriewe vir 'n eksterne diens, soos Amazon S3 wees. Ontwikkelaars kan een S3 rekening te deel, terwyl die aanbieding webwerf en produksie plekke het elk hul eie sleutels. Die tradisionele benadering vir die hantering van sulke config VARs is om hulle onder bron sit - in 'n eiendom lêer van een of ander aard. Dit is 'n fout sensitiewe proses, en is veral ingewikkeld vir open source programme wat dikwels moet afsonderlike (en private) takke met programspesifieke konfigurasies in stand te hou. 'N beter oplossing is om die omgewing veranderlikes gebruik, en hou die sleutels uit die kode. Op 'n tradisionele gasheer of werk plaaslik kan jy omgewing stel Vars in jou bashrc lêer. Op Heroku, gebruik jy config VARs. Die opstel van config Vars vir 'n ontplooi aansoek Gebruik die Heroku CLIs config. config: stel. config: kry en config: ontstel jou config bestuur Vars: Vorige weergawes van die Heroku CLI gebruik config: voeg en config: verwyder Jy kan ook wysig config Vars op jou programme instellings blad op Dashboard: Heroku manifesteer hierdie config Vars as omgewing veranderlikes te die aansoek. Hierdie omgewing veranderlikes is aanhoudende hulle sal in plek regoor ontplooi en jeug weer begin so bly, tensy jy nodig het om waardes te verander, net wat jy nodig het om hulle te keer stel. Wanneer jy sit of te verwyder 'n config var, sal jou program begin word. Byvoegings en config Vars As 'n add-on is geskep vir 'n aansoek, sal dit tipies skep een of meer config Vars vir daardie aansoek. Hierdie konfigurasie VARs kan bygewerk deur dié byvoeging - die presiese waardes kan verander as dié byvoeging diensverskaffer moet verander. Sien Byvoeging se waardes kan verander om meer oor byvoegings en hoe config VARs gebruik leer. Perke Config var data (die versameling van al die sleutels en waardes) is beperk tot 32KB vir elke app. Config var name moet nie begin met 'n dubbel onderstreep (). Voorbeeld Voeg 'n bietjie config VARs vir jou S3 rekening sleutels: Stel jou kode om die VARs tydens looptyd lees. Byvoorbeeld, in Ruby jy toegang tot die omgewing veranderlikes met behulp van die ENVKEY patroon - so nou kan jy 'n initializer soos so skryf: In Java, kan jy dit deur oproepe toegang tot System. getenv (sleutel). soos so: implementering van met Git Inhoudsopgawe Git is 'n kragtige gedesentraliseerde hersiening beheer stelsel, en is die middel vir die implementering van programme om Heroku. Jy hoef nie vaardig met Git om dit te gebruik vir die implementering kode vir Heroku te wees, maar jy mag dit waardevol om die basiese beginsels te leer. Dop van jou artikels in git Heroku programme verwag dat die app directory struktuur aan die wortel van die bron. As jou inligting is in 'n subgids in jou bron, dit sal nie uitgevoer word wanneer gestoot om Heroku. Voordat jy 'n app om Heroku kan stoot, moet jy sal 'n plaaslike Git bewaarplek inisialiseer en pleeg jou lêers om dit te. Byvoorbeeld, as jy 'n app in 'n gids, myapp, skep dan 'n nuwe bron vir dit: Dit is 'n plaaslike bron, nou woonagtig in die. git gids. Niks is oral gestuur nog sal jy nodig het om 'n afgeleë skep en doen 'n druk om jou kode te Heroku ontplooi. Die skep van 'n Heroku afgeleë Git afstandbeheer is verwysings na afgeleë bronne. Jy kan kies enige nommer van hierdie het, maar vir nou goed te fokus op net die afgeleë om Heroku. Die opdrag heroku skep 'n nuwe aansoek op Heroku saam met 'n git afgeleë wat gebruik moet word om jou aansoek bron ontvang. By verstek, Heroku instel HTTP as die Git vervoer. Die Heroku CLI sal outomaties plaas geloofsbriewe in die RC lêer op heroku aanteken. Die Git kliënt gebruik gemaak van cURL wanneer interaksie met HTTP afstandbeheer, en krul die geloofsbriewe gebruik van die RC lêer. Sien die verifikasie gedeelte en die CLI verifikasie artikel vir meer inligting. Jy kan die afgeleë in jou git opset sowel verifieer: Jy kan ook 'n bestaande Git bewaarplek te neem en voeg 'n afgeleë met behulp van die SVK URL verskaf wanneer jy jou program geskep. Dit mag nodig wees om dit te doen om 'n Git bewaarplek assosieer met 'n bestaande aansoek. Die heroku git: afgeleë opdrag sal hierdie afgeleë voeg vir jou op grond van jou programme git url. Die afgeleë is vernoem heroku in hierdie voorbeeld, maar jy kan die afgeleë enigiets wat jy wil deur 'r otherremotename noem. Jy mag vind dit makliker om die voorbeelde te volg as jy vashou aan die gebruik van die heroku afgeleë eerder as die gebruik van een met 'n ander naam. Daar is 'n spesiale afgeleë naam: oorsprong. wat is die verstek vir stoot. Met behulp van oorsprong as die afgeleë naam sal toelaat dat jy net git druk in plaas van git druk heroku tik. maar ons beveel die gebruik van 'n uitdruklik genoem afgeleë. Oor te skakel van SSH Git na http Git. hardloop heroku git: afgeleë in die gids hou jou plaaslike Git repository. Die CLI sal die heroku Git afgeleë aan die HTTP-protokol gebruik ignoreer. Implementering kode Jou Heroku app begin met 'n leë repository dit geen takke en geen kode. Dus is die eerste keer dat jy sit, moet jy sal tot 'n afgeleë tak te stoot om te spesifiseer. Jy kan jou eerste druk doen: Dit sal jou kode te stoot om die heroku afgeleë, vroeër geskep. Gebruik hierdie wanneer jy wil om die nuutste kode gepleeg in Git om Heroku ontplooi. Tydens die aanvang van jou eerste bou, sal Inisialiseer bewaarplek vertoon terwyl jou programme bewaarplek op Heroku geskep. Op die daaropvolgende bou, sal Haal bewaarplek vertoon terwyl jou programme bewaarplek is vergesog en bereid is om jou druk te aanvaar. Takke gestoot om Heroku behalwe meester sal geïgnoreer word deur hierdie opdrag. As jy uit te werk van 'n ander tak plaaslik, kan jy óf saam te smelt om te bemeester voordat stoot, of spesifiseer dat jy jou plaaslike tak te stoot na 'n afgeleë meester. Om 'n ander as meester tak stoot, gebruik hierdie sintaksis: Aansoeke wat staatmaak op git submodules word ondersteun, bykomend tot baie ander afhanklikheid resolusie strategieë. git LFS word nie ondersteun nie en kan veroorsaak stoot om te misluk. Bou installeer bestel As verskeie parallelle builds is begin vir 'n app (hetsy deur dieselfde persoon presteer verskeie stoot, deur inligting medewerkers gelyktydig stoot of omdat builds gelyktydig geskep met ander meganismes soos Bou API of GitHub Sync), dan is die laaste gebou te voltooi sal oor die algemeen die een wat eindig ontplooi vir die jeug wees, selfs al is dit bou begin voordat ander bou. Neem 'n voorbeeld van twee bou, A en B: Bou 'n begin, loop stadig en voltooi in 2 minute. 30 sekondes nadat die bou van 'begin, bou B begin en voltooi in 1 minuut. Bou B is ontplooi om die jeug wanneer dit voltooi. 30 sekondes later, bou 'n voltooi en is ontplooi vir die jeug. Die eindresultaat is dat die bou van 'ontplooi op die jeug, selfs al bou B later begin. Losmaak van bou proses Wanneer ontplooi kode behulp git druk. jy kan losmaak van die bou proses deur Ctrl C. Maar jou bou sal voortgaan om te verwerk in die agtergrond en sal sodra dit klaar 'n nuwe weergawe te skep. HTTP Git verifikasie Die Heroku HTTP Git eindpunt aanvaar net API-sleutel gebaseer HTTP Basiese verifikasie. 'N gebruikersnaam is nie nodig en enige waarde geslaag gebruikersnaam geïgnoreer. Jy kan nie kontroleer met die Heroku HTTP Git eindpunt met jou Heroku gebruikersnaam (e-pos) en wagwoord. Gebruik 'n API sleutel, soos beskryf in hierdie afdeling As, vir een of ander rede, jy kontroleer om die Git diens met verkeerde geloofsbriewe, kry youll hierdie fout: Wanneer jy heroku aanmeld. die CLI sal 'n inskrywing vir git. heroku in jou RC lêer (of sy Windows ekwivalent) te skryf. Sedert die Git kliënt gebruik gemaak van cURL wanneer interaksie met HTTP Git afstandbeheer, sal korrekte verifikasie nou gebeur deursigtig. As jy met behulp van ander Git kliënte, soos EGit of toring, instel hulle na 'n leë string vir gebruikersnaam (of enige string wat jy wil sy geïgnoreer) en jou rekening API sleutel vir die wagwoord gebruik. Die API sleutel is beskikbaar in die CLI en in Dashboard. SSH Git vervoer Die verstek Git vervoer ingestel deur die Heroku CLI is HTTP, maar SSH vervoer word ook ondersteun. SSH en HTTP vervoer kan uitruilbaar gebruik word deur dieselfde persoon en deur verskeie gebruikers saam aan dieselfde inligting. Om die Heroku CLI instel SSH vervoer, kan jy verby 'n --ssh-git vlag om die heroku skep. heroku git: afgeleë en heroku git: kloon bevele. Om SSH Git vervoer gebruik, moet jy jou SSH sleutel met Heroku registreer. Sien die bestuur van SSH-sleutels artikel vir meer inligting. As jy wil altyd gebruik SSH Git met Heroku op 'n spesifieke masjien, kan jy die volgende globale konfigurasie te voeg: HTTP URL's sal steeds geskryf word om dopgehou. git maar Git sal herskryf, op die vlieg, al Heroku HTTP Git URLs om SSH gebruik . Om dit te herskryf instelling te verwyder, hardloop: Verskeie afstandbeheer en omgewings Dieselfde tegnieke wat gebruik word om te ontplooi om produksie gebruik kan word om 'n ontwikkeling tak van jou aansoek om 'n aanbieding aansoek op Heroku sit, soos beskryf in die bestuur van veelvuldige omgewings vir 'n App. Bou kas Buildpacks kan kas inhoud opsioneel vir hergebruik tussen bou. 'N Tipiese gebruik-geval vir die buildpack is om te bespoedig bou deur die kas afhanklikhede sodat hulle hoef nie te wees re-haal op elke gebou. Dit versnel grootliks opbou. As jy vermoed dat 'n bou-probleem wat verband hou met hierdie kas, kan jy die heroku-repo plugin gebruik om die kas skoon te maak. Repository grootte Terwyl daar is nie 'n harde limiet op jou bewaarplek grootte, is baie groot bronne (meer as 600 MB) nie aanbeveel hulle outs veroorsaak en stadig stoot algehele. Running heroku programme: info sal jou wys jou bron grootte. Die app bou kas gestoor binnekant van die jeug repository, so moenie verbaas wees as die bewaarplek is groter afstand as plaaslik. Algemene oorsake van groot bewaarplekke is binêre lêers nagegaan in die bewaarplek (Git is berug sleg hantering binaries) of voortdurend-veranderende ontwikkeling logs. Die verwydering van lêers verbind deur 'n ongeluk kan gedoen word met git filter-tak. al na die uitvoer van dit wat jy sal hê om te stoot met die --force opsie, en dit is iets wat koördinasie onder jou span vereis. Ander beperkings op die Git diens te beskerm, Heroku stel sekere beperkings op Git bewaarplek gebruik en inhoud grootte. Gebruikers word beperk tot 'n rollende venster van 75 Git versoeke per uur, per persoon, per app. Sodra hierdie limiet bereik, is Git versoeke ontken totdat versoek daal laer as die limiet vir 'n paar minute, met die fout boodskap: As jy hierdie limiet bereik, te verseker daar is nie outomatiese prosesse of skrifte stemdag die Git repository. Daarbenewens het die ongecomprimeerd grootte van 'n betaling van die kop van die bron, gekombineer met die grootte van herstel submodules, kan nie meer as 1 GB. Die gebruik van ondermyning of ander hersiening beheerstelsels Wat gebeur as jy reeds met behulp van Subversion of 'n ander hersiening beheer stelsel om jou bronkode te spoor Hoewel ons glo dat Git is een van die beste keuses wat beskikbaar is vir hersiening beheer, jy nie nodig het om op te hou met jou huidige weergawe beheer stelsel . Git kan suiwer wees 'n ontplooiing meganisme, bestaande side-by-kant met jou ander instrument. Jy kan baie meer oor. gitignore leer in ons artikel oor die onderwerp. Byvoorbeeld, as jy 'Subversion, inisialiseer jou Git repository soos hierbo beskryf. Dan, voeg 'n. gitignore lêer te Git vertel jou Subversion dopgehou ignoreer. Nou vertel Subversion om Git ignoreer: Die f (krag vlag) word aanbeveel om konflikte met ander ontwikkelaars stoot vermy. Aangesien jy nie die gebruik van Git vir jou hersiening beheer, maar as 'n vervoer net, met behulp van die krag vlag is 'n redelike praktyk. Elke keer as jy wil sit om Heroku:


No comments:

Post a Comment