SlideShare uma empresa Scribd logo
1 de 20
Vesmír. Miliardy galaxií, hvězd a planet.
Co nevidíme, je temná hmota, o které víme
jen díky jejímu gravitačnímu vlivu na okolí.
Existuje masa vývojářů, které „nevidíme“,
nepíší články, nechodí na konference.
Nehostují v cloudu a používají FTP.
Novinky zajímají early adoptery. Je skvělé,
pokud deployujete přes GIT, Heroku atd.
Pak není FTP deployment pro vás.
Pro zbývajících
99 %
FTP deployment je nástroj pro těch
zbývajících 99 % programátorů. A pro
99,9 % hostingů, které mají FTP.
Total
Commander
Deployment
Vyvíjet přímo na serveru je špatné, stejně
jako „deployovat“ pomocí Total
Commanderu. Co je lepší?
lepší je
automatizace
Automatizace šetří čas. A eliminuje riziko, že
uděláte chybu. Proto nahrávejte pomocí
nástroje, jakým je třeba FTP deployment.
deployment.ini
Pro nástroj FTP deployment jednou
vytvoříte konfigurační soubor a celý
deployment pak probíhá na jedno kliknutí.
deployment.ini
Můžete určit, které soubory ignorovat. Vždy
se ignorují /.git a /.svn, jejich nahrání na
server představuje bezpečnostní riziko.
FTP
FTPS
SFTP
Protože komunikace přes FTP je
nešifrovaná (včetně odeslání hesla), vždy
používejte FTPS nebo ještě lépe SFTP.
kompilace
Deployment není jen synchronizace
souborů, ale také třeba kompilace šablon,
skriptů, stylů atd…
Tohle je největší brzda načítání stránek,
obzvlášť na špatném (mobilním) internetu.
Ideální je spojit všechny skripty a kaskádové
styly do jednoho souboru a minifikovat je.
Google
Closure
Compiler
FTP deployment skripty minifikuje pomocí
GCC. Vyžaduje to Javu (což je takový
adware distribuovaný s Ask.com toolbarem).
combined.js
Pro spojení skriptů během vývoje můžete
elegantně využít značky Apache SSI.
FTP deployment je podporuje.
Clean CSS
&
LESS
Pro spojení stylů doporučuji použít LESS a
minifikaci zajistí plugin Clean CSS. Soubory
*.less pak dáme do sekce „ignore“.
deployment.ini
Před samotnou synchronizací zavoláme
LESS (na lokálním počítači), po ní můžeme
třeba smazat /temp (na vzdáleném stroji).
A pak stačí jen kliknout a je to (barevné).
FTP deployment je ten nejzákladnější
nástroj. Použijte cokoliv lepšího! Ale nejděte
níž. Vyhněte se přímému přístupu na FTP.
https://github.com/dg/ftp-deployment

Mais conteúdo relacionado

Destaque

VIM - nejefektivnější editor na světě
VIM - nejefektivnější editor na světěVIM - nejefektivnější editor na světě
VIM - nejefektivnější editor na světěClevis s.r.o.
 
Deployment PHP aplikací | WebExpo 2011
Deployment PHP aplikací | WebExpo 2011Deployment PHP aplikací | WebExpo 2011
Deployment PHP aplikací | WebExpo 2011Jan Mittner
 
06 prez10(tvorba webu)
06 prez10(tvorba webu)06 prez10(tvorba webu)
06 prez10(tvorba webu)olc_user
 
ORM Designer: Speed up your ORM development
ORM Designer: Speed up your ORM developmentORM Designer: Speed up your ORM development
ORM Designer: Speed up your ORM developmentBrnoPHP
 
Nikola luxova
Nikola luxovaNikola luxova
Nikola luxovacekaon
 
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...Jakub Kulhan
 
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)Péhápkaři
 
What makes a good developer from a management perspective
What makes a good developer from a management perspectiveWhat makes a good developer from a management perspective
What makes a good developer from a management perspectiveBrnoPHP
 
Čtvrtkon #44 - Symfony php framework
Čtvrtkon #44 - Symfony php frameworkČtvrtkon #44 - Symfony php framework
Čtvrtkon #44 - Symfony php frameworkMartin Zeman
 
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...Péhápkaři
 
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS cluster
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS clustercommit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS cluster
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS clusterJakub Kulhan
 
Symfony vs Nette vs Phalcon
Symfony vs Nette vs PhalconSymfony vs Nette vs Phalcon
Symfony vs Nette vs PhalconVojta Svoboda
 
Vývojáři sobě: 0. sraz - PHP: Appka v Nette
Vývojáři sobě: 0. sraz - PHP: Appka v NetteVývojáři sobě: 0. sraz - PHP: Appka v Nette
Vývojáři sobě: 0. sraz - PHP: Appka v NetteVývojáři sobě
 
Microservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowMicroservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowJakub Nesetril
 
Real-time Web a NodeJS
Real-time Web a NodeJSReal-time Web a NodeJS
Real-time Web a NodeJSJakub Nesetril
 

Destaque (17)

VIM - nejefektivnější editor na světě
VIM - nejefektivnější editor na světěVIM - nejefektivnější editor na světě
VIM - nejefektivnější editor na světě
 
Deployment PHP aplikací | WebExpo 2011
Deployment PHP aplikací | WebExpo 2011Deployment PHP aplikací | WebExpo 2011
Deployment PHP aplikací | WebExpo 2011
 
06 prez10(tvorba webu)
06 prez10(tvorba webu)06 prez10(tvorba webu)
06 prez10(tvorba webu)
 
ORM Designer: Speed up your ORM development
ORM Designer: Speed up your ORM developmentORM Designer: Speed up your ORM development
ORM Designer: Speed up your ORM development
 
Nikola luxova
Nikola luxovaNikola luxova
Nikola luxova
 
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...
ReactPHP + Symfony = profit aneb 1000req/s přes Symfony s minimálními nár...
 
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)
Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)
 
What makes a good developer from a management perspective
What makes a good developer from a management perspectiveWhat makes a good developer from a management perspective
What makes a good developer from a management perspective
 
Čtvrtkon #44 - Symfony php framework
Čtvrtkon #44 - Symfony php frameworkČtvrtkon #44 - Symfony php framework
Čtvrtkon #44 - Symfony php framework
 
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...
Martin Froněk - Jak využít soft skills ve svůj prospěch 2 (15. sraz přátel PH...
 
Neo4j Jízdomat
Neo4j JízdomatNeo4j Jízdomat
Neo4j Jízdomat
 
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS cluster
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS clustercommit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS cluster
commit => #GitHub => #CircleCI => #Docker => #Kubernetes #AWS cluster
 
Symfony vs Nette vs Phalcon
Symfony vs Nette vs PhalconSymfony vs Nette vs Phalcon
Symfony vs Nette vs Phalcon
 
Vývojáři sobě: 0. sraz - PHP: Appka v Nette
Vývojáři sobě: 0. sraz - PHP: Appka v NetteVývojáři sobě: 0. sraz - PHP: Appka v Nette
Vývojáři sobě: 0. sraz - PHP: Appka v Nette
 
Asynchronně v PHP
Asynchronně v PHPAsynchronně v PHP
Asynchronně v PHP
 
Microservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowMicroservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflow
 
Real-time Web a NodeJS
Real-time Web a NodeJSReal-time Web a NodeJS
Real-time Web a NodeJS
 

Mais de David Grudl

TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGING
TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGINGTRACY: AN ADDICTIVE TOOL TO EASE DEBUGGING
TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGINGDavid Grudl
 
Shopcamp: Jak to nepokazit v cílové rovince?
Shopcamp: Jak to nepokazit v cílové rovince?Shopcamp: Jak to nepokazit v cílové rovince?
Shopcamp: Jak to nepokazit v cílové rovince?David Grudl
 
jQuery: full frontal
jQuery: full frontaljQuery: full frontal
jQuery: full frontalDavid Grudl
 
Soft(ware) skills (konference Devel.cz, 2013)
Soft(ware) skills (konference Devel.cz, 2013)Soft(ware) skills (konference Devel.cz, 2013)
Soft(ware) skills (konference Devel.cz, 2013)David Grudl
 
Závislosti, injekce a vůbec
Závislosti, injekce a vůbecZávislosti, injekce a vůbec
Závislosti, injekce a vůbecDavid Grudl
 
10.000 followerů na Twitteru snadno a šupem
10.000 followerů na Twitteru snadno a šupem10.000 followerů na Twitteru snadno a šupem
10.000 followerů na Twitteru snadno a šupemDavid Grudl
 
„Bude upřesněno“ na Barcamp Brno 2011
„Bude upřesněno“ na Barcamp Brno 2011„Bude upřesněno“ na Barcamp Brno 2011
„Bude upřesněno“ na Barcamp Brno 2011David Grudl
 
WebExpo 2011: Novinky z konference BUILD
WebExpo 2011: Novinky z konference BUILDWebExpo 2011: Novinky z konference BUILD
WebExpo 2011: Novinky z konference BUILDDavid Grudl
 
Technika vs. lidstvo 1:0
Technika vs. lidstvo 1:0Technika vs. lidstvo 1:0
Technika vs. lidstvo 1:0David Grudl
 
Nette Framework 2 at WebExpo 2010
Nette Framework 2 at WebExpo 2010Nette Framework 2 at WebExpo 2010
Nette Framework 2 at WebExpo 2010David Grudl
 

Mais de David Grudl (10)

TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGING
TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGINGTRACY: AN ADDICTIVE TOOL TO EASE DEBUGGING
TRACY: AN ADDICTIVE TOOL TO EASE DEBUGGING
 
Shopcamp: Jak to nepokazit v cílové rovince?
Shopcamp: Jak to nepokazit v cílové rovince?Shopcamp: Jak to nepokazit v cílové rovince?
Shopcamp: Jak to nepokazit v cílové rovince?
 
jQuery: full frontal
jQuery: full frontaljQuery: full frontal
jQuery: full frontal
 
Soft(ware) skills (konference Devel.cz, 2013)
Soft(ware) skills (konference Devel.cz, 2013)Soft(ware) skills (konference Devel.cz, 2013)
Soft(ware) skills (konference Devel.cz, 2013)
 
Závislosti, injekce a vůbec
Závislosti, injekce a vůbecZávislosti, injekce a vůbec
Závislosti, injekce a vůbec
 
10.000 followerů na Twitteru snadno a šupem
10.000 followerů na Twitteru snadno a šupem10.000 followerů na Twitteru snadno a šupem
10.000 followerů na Twitteru snadno a šupem
 
„Bude upřesněno“ na Barcamp Brno 2011
„Bude upřesněno“ na Barcamp Brno 2011„Bude upřesněno“ na Barcamp Brno 2011
„Bude upřesněno“ na Barcamp Brno 2011
 
WebExpo 2011: Novinky z konference BUILD
WebExpo 2011: Novinky z konference BUILDWebExpo 2011: Novinky z konference BUILD
WebExpo 2011: Novinky z konference BUILD
 
Technika vs. lidstvo 1:0
Technika vs. lidstvo 1:0Technika vs. lidstvo 1:0
Technika vs. lidstvo 1:0
 
Nette Framework 2 at WebExpo 2010
Nette Framework 2 at WebExpo 2010Nette Framework 2 at WebExpo 2010
Nette Framework 2 at WebExpo 2010
 

FTP deployment Devel 2015