Instalace Nette bez composeru
- os666
- Člen | 2
Ahoj rád bych si osahal nette. Mám zdarma hosting „na hraní“, ale mám
tam jen ftp přístup + databázi mysql.
Žádná příkazová řádka, takže na composer můžu asi zapomenout.
Co jsem udělal:
- nějakou dobu zpět jsem si zkusil na hostingu Requirements Checker, prošlo mi to (tušim, že tam byl nějakej warning u nějakýho modulu, ale závěr byl, že by to tam mělo běžet)
- stáhl jsem si nette 2.3.0 zip archiv
- koukal jsem na quickstart a zkoušel najít, jak by to šlo bez composeru, trochu sem googlil
Co bych potřeboval vědět:
- Jak udělat „Hello world“
- Tzn. mám zip archiv, rozbalim ho je tam spoustu složek, co z toho potřebuju zkopírovat na server a co je jen zbytečný balast?
- potřebuju jen „nasadit“ (bez composeru) nette framework a začít si s ním hrát
Předem díky za odpověď :-)
- David Matějka
- Moderator | 6445
Rozhodne nevyvijej (ani pro hrani) primo na hostingu – ma to jen nevyhody. Nainstaluj si lokalne apache, php a mysql – treba pomoci balicku xampp
- Filip Procházka
- Moderator | 4668
Rozhodně nevylučuj composer jenom kvůli hostingu. Prostě nainstaluješ závislosti lokálně a pak uploadneš celý projekt i s vendor složkou.
- Tomáš Jablonický
- Člen | 115
V praxi na produkčním serveru není ani GIT natož Composer. Takže jak radí kolegové, rozchodit Composer na Localhost, otestovat a nahodit aplikaci přes FTP na server.
- vvoody
- Člen | 910
Vzhľadom na tvoj nižší skill, ktorý odhadujem z toho čo píšeš, na composer s radostou pre začiatok zabudni, je to len ďalšia prekážka ktorá ťa môže odradiť od programovania. Composer je veľmi šikovná vec, neviem si dnes bez neho predstaviť vývoj, no ale keď príde k tomu, aby si svoje decko naučil jazdiť na kole tak ho predsa neposadíš hneď na motorku alebo za volant :D
Aby si v tom mal trochu jasnejšie, úlohou composeru je stiahnuť knižnice ako je napríklad samotné Nette, Nette komponenty, databázové vrstvy, generátory pdfiek a kadečo iné. Nič z toho v blízkej dobe potrebovať nebudeš (okrem Nette :D ale to je súčasťou sandboxu) a keby hej tak si to stále môžeš stiahnuť ručne. Druhá úloha composeru je autoloading, ktorý pre teba zvládne úplne tak isto dobre aj samotné Nette. Autoloading v Nette zabezpečuje vecička menom Robotloader, ktorým sa nemusíš vôbec zaoberať dokiaľ na neho v dokumentácií/quickstarte nenarazíš. Robot loader je v Nette sandboxe už správne nastavený.
Keď to myslíš s php seriózne, tak na composer určite nezabudni a jedného dna (čo najskorej) ho začni používať. Je to už v podstate štandard v autoloadingu, sťahovaní a správe závislostí php knižníc v php svete.
Editoval vvoody (6. 3. 2015 11:48)
- Milo
- Nette Core | 1283
@os666 Stáhni ZIP balíček, z něj si rozbal složku sandbox, obsah této složky nakopíruj na hosting. Je to celá funkční aplikace Nette.
Index je v podsložce www
, tam by měl vést DocumentRoot
kvůli bezpečnosti. Složky temp
a log
potřebují
nastavit oprávnění zápisu pro webserver, nevím jak se to na tvém
hostingu řeší.
- Freema
- Člen | 18
Male workflow doporučení sežeň si NetBeans nebo PHPstorm založ nový projek jako PHP application form Remote Server. Vyplň tam ftp prekopiruj si ručně Nette a můžeš pracovat. Jakkoliv změnu kterou uděláš u sebe na localu se ti projeví na hostingu protože máš synchronizaci souboru. PHPstrom má lepši remote ale s NetBeansem se dá taky dobře vyjít.
- os666
- Člen | 2
Děkuju všem za příspěvky i těm, kteří nepochopili otázku :)
Nejužitečnější odpovědi asi Milo a Freema :)
Moje představa o composeru byla a je, že je to svym způsobem ekvivalent Mavenu v Javě. Jak zmínil vvoody, na aplikaci typu Hello world v Nette je to trochu overkill.
Vyzkouším si Nette a bude-li se mi líbit, tak se ke composeru vrátím :)
Editoval os666 (9. 3. 2015 16:24)
- Filip Procházka
- Moderator | 4668
@os666 to máš dost zkreslenou představu a composer se rozhodně nauč, není to žádný moloch. Pokud chceš dělat v PHP za peníze, tak je potřeba to dělat trochu na úrovni. A composer je jedna z věcí, které tu úroveň zvedají :)
- Pavel Kravčík
- Člen | 1196
Já to zkoušel bez composeru na začátku. Nedoporučuju. Loading a přidání doplňku je opravdu peklo. :)
- Namespace
- Člen | 81
Mě se celkem osvědčila „instalace“ projektu přes Netbeans
z lokálního repozitáře Nette. Poté si už nad projektem mohu s composerem
dělat co chci.
Jinak vývoj na produkčním serveru je dost nestandardní věc .. ikdyž ti
Tracy usnadní práci s debugem.
Jak už tu zaznělo .. instalace lokálního serveru a databáze je otázka 5ti minut (např. balík XAMPP).
- Jan Endel
- Člen | 1016
Ahoj bunacku,
bez composeru se samozřejmě obejít dá, třeba tak, že si stáhneš zip
z oficiálního github repozitáře ale je
silně doporučeno composer používat, je to fakt snadný,
navíc v Linuxu to máš o to snažší. Je jednoduché
začít, stačí jen chtít.
Kdyžtak se neváhej ptát dále kdyby bylo cokoliv nejasného.
- bunacek
- Člen | 9
Ahoj Jane
díky za odpověď, se zipem jsem si nakonec poradil, na git z firmy nemůžu
:-( Snažím se postupovat podle návodu pro začátečníky (https://doc.nette.org/cs/quickstart)
a není mi jasná struktura webu v Nette. Pracuji v CI a oproti němu mi Nette
připadá že přidává zbytečné složitosti do struktury, které na
přehlednosti moc nepřidají. Takže teď jak na nový projekt? Jako
začátečníka v Nette mě napadá jen vytvořit si růčo adresář a v něm
hromadu prázdných souborů. Z dokumentace není jasné co by měly obsahovat.
Je psaná tak, že předpokládá, že začínám s polotovarem, což v tomto
případě nebude dost dobře možné.
Nemáte někdo skript např. pro NB, který by strukturu včetně všech
souborů a obsahů založil?
Díky
- Jan Endel
- Člen | 1016
Aha, promiň trošku jsem tě nepochopil, zip nette/nette je čistě jenom knihovna, která umožňuje práci s frameworkem nette, pokud chceš založit nový projekt, doporučuju spíše tenhle zip. To je ten polotovar, ze kterého vychází právě dokumentace. Když si pak naroutuješ svůj Apache/Nginx tak, aby url směřovala do složky cestaKprojektu/www tak na dotyčné url uvidíš text, co dále dělat a můžeš pokračovat právě článkem co jsi zmiňoval.
- bunacek
- Člen | 9
Díky za rady, stáhnul jsem (sice s problémy ale stáhnul :-)) sandbox, rozbalil, pustil, funguje, ale jak dál. V návodu je psáno
Úklid
Sandbox obsahuje ukázkový kód. Měli bychom začít tím, že ho
pročistíme, předtím než začneme něco programovat – bez obav tedy
smažeme soubor app/templates/Homepage/default.latte. Vlastní obsah přidáme
za moment.
Bohužel adresář app/templates ve struktuře neexistuje, něco podobného najdu v /app/presenters/templates/Homepage
bohužel ale, ať zde cokoliv změním, nebo smažu, nemá to vliv na zobrazený obsah, čekal jsem, že zásahem do tohoto souboru dosáhnu nějaké viditelné změny spuštěné aplikace
Dokumentace v tomto směru bohužel mlčí a zcela nesystémově se začne zaobírat ukázkou Tracy :-(
Editoval bunacek (1. 9. 2015 8:09)
- bunacek
- Člen | 9
No nic pokračuji dál ve čtení, dalším krokem je nastavení db. Testuji ze serveru na kterém mi běží Ubuntu server, tudíž stroj bez GUI, ale:
Adminer is available only from localhost
Tak nevím, je tohle u ukázkového příkladu nutné, nebo by bylo lepší zmínit se na konci dokumentace o bezpečnosti a některýh nastaveních, a pro testování ponechat některá bezpečnostní pravidla stranou?
Mrzí mě to, rád by si rozšířil svoje znalostní portfolio, ale vidím, že to bude asi problém :-(
- Jan Tvrdík
- Nette guru | 2595
Adminer is available only from localhost
Vyvíjet na vzdáleném serveru je (pokud nejsi bůh, co si dokáže na to dokonale vyladit dev stack) extrémně neefektivní. Důrazně ti doporučuji to nedělat.
nebo by bylo lepší zmínit se na konci dokumentace o bezpečnosti a některýh nastaveních
Ne. Většina lidí by ty bezpečnostní pravidla ignorovala. Testováním na vzdáleném serveru je důrazně nedoporučováno.
rád by si rozšířil svoje znalostní portfolio
Doporučuji rozšíření začít tím, že si zprovozníš lokální server.
- David Grudl
- Nette Core | 8239
@bunacek prestaň byt ironický.
V dokumentaci https://doc.nette.org/cs/quickstart vidím správně uvedenou cestu app/presenters/templates, jaký používáš návod?
V dokumentaci bohužel není dostatečně zdůrazněno, že přístup z localhost je nutný – jinak to totiž neběží ve vývojovém režimu. Takže použij localhost.
- bunacek
- Člen | 9
Používám dokumentaci, která je odkázána v aktuálním instalačním balíčku (2.3.4, který jsem DNES stáhnul). Pod obrázkem zelené knihy? vpravo s názvem Quick start. Nezkoumal jsem, jaká to je dokumentace. Teď jsem ale zjistil, že aktuální balíček odkazuje na zastaralou dokumentaci k verzi 2.1. Takže vše lépe a radostněji.
- bunacek
- Člen | 9
Pro @JanTvrdík. Bůh nejsem, kdybych byl, byl bych Vševědoucí a do tohoto fóra bych se nikdy nedostal. Na druhou stranu, existuje nějaký opradu pádný důvod proč vyvíjet na localhostu.
Pro @DavidGrudl nechci být ironický, a ani si tak nepřipadám, snažím se jen vžít do role nového uživatele a pokouším se získat co nejvíc informací. Ironické na tom je to, že se mi to dle dokumentace nedaří. Ale to snad není můj problém.
- Jan Endel
- Člen | 1016
Ahoj bunacku,
Bohuzel nette tak nejak pocita s tim, ze vyvijis na lokalhostu v takzvanem
development modu, kde se chyby ukazuji hned a obsah webu neni cachovan. Proto
ravdepodobne nevidis zmeny, ktere provedes v kodu. Pokud mermomoci chces
vyvijet na vzdalenem serveru, budes urcite chtit kouknout na to jak nakonfigurovat
server tak aby fugoval i on v development modu.
Hodne zdaru
- chemix
- Nette Core | 1310
Ahoj @bunacek
uvedomuji si ze odkazy pro verzi ktera neni stavena na composeru asi nejsou uplne idelani, ve ctvrtek se na to zkusim kouknout. Pokud mas cas a nemas daleko do prazske Paralelni Polis urcite doraz na dokumentacni krouzek, pomuzes nam vyresit nektere zacatecnicke fuckapy ktere na strankach urcite jsou ale jelikoz to cteme a upravujeme vetsinou my, co uz s frameworkem mame zkusenosti neni to tak efektivni. http://srazy.info/…acni-krouzek
Co se vyvoje tyce, tak vyvyjet na vzdalenem serveru je „divne“ je jedno ze to treba neni produkcni server na kterem pak bezi finalni stranky.
co bych ti doporucil jako zakladni setup nez zacnes delat nejake experimenty s Nette Frameworkem
- lokalne zprovoznit apache mysql (alternativou muze byt spusteni aplikace skrze php a jako db pozuivat sqllite, ale nedoporucuji)
- nainstalovat IDE (PhpStorm, NetBeans)
- nainstalovat composer (protoze pokud budes stavet neco zajimavejsiho, zjistit ze budes chtit pouzit nejake dalsi knihovny a to se v dnesni dobe resi skrze balickove nastroje)
- stahnout sandbox skrze composer
- projit si aktualni quick start.
- pokud narazis na cokoli v QS co ti nedava smysl muzes v cestine zalozit issue, pripadne i poslat opravu (+ anglickou verzi, s tou ti pripadne v komentarich nekdo muze poradit) https://github.com/nette/docs/
nebyla videna zmena :
Nette ma v sobe jednu super vlastnost a to ze se snazi byt co nejrychlejsi. Ve
tvem pripade pokud jsi upravoval soubory na serveru tak to cele
funguje tak:
- spustit stranku
- existuje zkompilovana verze sablony? NE , tak ji vytvorime
- vygeneruje se novy sablonovy soubor v adresari cache, ktery vznikne ze sablon a vysledk je zkompilovan do funcke
- zobrazi se vysledek pocitany z funkci
- refresh stranky
- existuje zkompilovana verze sablony? ANO , pouzij ji
- zobrazi se vysledek pocitany z funkci
- uprava puvodni sablony
- znova kouknes na stranku
- system, jelikoz bezi v produkcnim modu (autodetekce, ktera se da pripadne vypnout) zjisti ze uz sablona zkompilovana je a na produkcnim serveru se IGNORUJE cas originalni sablony a proto se pouzije puvodni zkompilovana verze
- nevidis zadnou zmenu
Pokud by jsi pracoval na lokalnim stroji, zmenu by jsi samozrejme ihned videl, a treba by sis vsiml i delsiho casu zpracovani stranky, ktery je zpusoben prave kompilaci sablony, kterou v produkci delas prave jen jednou.
Pokud se ti nic z vyse popsaneho delat nechce, budes narazet na „problemy“.
Pokud si chces jen „neco zkusit“ doporucim ti http://blog.honzacerny.com/…-cloud-9-ide a http://blog.honzacerny.com/…-c9-io-heart
je to otazka 4minut a hned muzes zkouset vse co Nette nabizi.
Co se adresarove struktury tyce, tak s CI nemam zkusenosti, ale neprijde mi
pro zacatek adresar „presenters“, „presenters/templates“ a „model“
(to cele ve slozce app
) jako „nic co by neslo pochopit“
- Jan Suchánek
- Člen | 404
A co třeba zprovoznit na Virtualbox Ubuntu Server Nginx PHP + (MySQL nebo Postgre) a data mít u sebe je špatně? A postupně se probojovat třeba k Docker ? Výborný návody jak na to má Digital Ocean.
Editoval Jan Suchánek (1. 9. 2015 11:56)
- David Kudera
- Člen | 455
Jan Suchánek napsal(a):
A co třeba zprovoznit na Virtualbox Ubuntu Server Nginx PHP + (MySQL nebo Postgre) a data mít u sebe je špatně? A postupně se probojovat třeba k Docker ? Výborný návody jak na to má Digital Ocean.
Docker super, ale pro začátečníka? Nemyslím si… Jinak píše, že používá linux, takže tím to má super jednoduchý už tak (aspoň podle mých zkušeností) a virtuál nepotřebuje.
- David Grudl
- Nette Core | 8239
Opravil jsem link https://doc.nette.org/en/quickstart, aby vedl na aktuální Quickstart.
A asi by bylo dobré v úvodní kapitole zdůraznit, že musí být pouštěn z localhostu.
- bunacek
- Člen | 9
F.Vesely napsal(a):
Pokud nevyvyjis na localhostu z toho duvodu, ze nevis, jak zprovoznit LAMP (Linux, Apache, MySQL, PHP), popripade WAMP (Windows, Apache, MySQL, PHP) u sebe na PC, tak ti s tim urcite take dokazeme poradit. :) Ono vyvyjeni na localhostu ma jen same vyhody.
Ahoj, výše jsem psal že na desktopu mám Linux, vyvíjím na externím serveru (většinou Ubuntu server) už 8 let, předtím jsem vyvíjel na localhostu a žádné výhody jsem oproti externímu serveru nezaznamenal. Na správu mám webmina a pár skriptů, které pro něj vznikly. Jediný rozdíl, který jsem zaznamenal je, že mi desktop posledních 8 let běhá rychleji.
- bunacek
- Člen | 9
David Kudera napsal(a):
Jan Suchánek napsal(a):
A co třeba zprovoznit na Virtualbox Ubuntu Server Nginx PHP + (MySQL nebo Postgre) a data mít u sebe je špatně? A postupně se probojovat třeba k Docker ? Výborný návody jak na to má Digital Ocean.
Docker super, ale pro začátečníka? Nemyslím si… Jinak píše, že používá linux, takže tím to má super jednoduchý už tak (aspoň podle mých zkušeností) a virtuál nepotřebuje.
S tím Linuxem to ve firmě tak jednoduchý nemám, jak jsem psal jsou tu dost velké restrikce na přístup k internetu, takže to co dělám doma na Linuxovém desktopu běžně z příkazové řádky, v práci je dost problém. Většinou to končí problémem s ověřením :-(
Editoval bunacek (1. 9. 2015 13:13)
- F.Vesely
- Člen | 369
bunacek napsal(a):
F.Vesely napsal(a):
Pokud nevyvyjis na localhostu z toho duvodu, ze nevis, jak zprovoznit LAMP (Linux, Apache, MySQL, PHP), popripade WAMP (Windows, Apache, MySQL, PHP) u sebe na PC, tak ti s tim urcite take dokazeme poradit. :) Ono vyvyjeni na localhostu ma jen same vyhody.
Ahoj, výše jsem psal že na desktopu mám Linux, vyvíjím na externím serveru (většinou Ubuntu server) už 8 let, předtím jsem vyvíjel na localhostu a žádné výhody jsem oproti externímu serveru nezaznamenal. Na správu mám webmina a pár skriptů, které pro něj vznikly. Jediný rozdíl, který jsem zaznamenal je, že mi desktop posledních 8 let běhá rychleji.
Chapu, ze za 8 let uz jsis na to zvykl a vyhovuje ti to. Jak se psalo vyse, pro Nette staci v configu povolit debug mode a Adminera pouzivat vubec nemusis, muzes pro spravu database pouzivat to, na co jsi zvykly za tech 8 let. Pokud mas k serveru administratorska prava a muzes si tam instalovat a nastavovat rozsireni, tak potom je to s localhostem skoro srovnatelne, ale o nejakem pozorovatelnem zpomaleni PC se zapnutym Apache a MySQL serverem bych dokazal diskutovat. Nicmene composer bych ti silne doporucil, nemusis vsechny ty zavislosti dohledavat a dostahovavat sam.