SlideShare une entreprise Scribd logo
1  sur  12
Zautomatyzowane 
środowisko 
deweloperskie.
Wirtualizacja 
środowiska 
Wirtualizacja i automatyzacja środowiska deweloperskiego przy użyciu: 
VAGRANT & GIT
Dlaczego wirtualizacja? 
• Spójne środowiska przy wielu projektach 
• Łatwość wdrażania nowych programistów w 
projekt 
• Dev env = Prod env
Vagrant 
Zautomatyzowana konfiguracja wielu środowisk deweloperskich. 
• Instalacja niezbędnego oprogramowania podczas uruchamiania maszyny 
• Konfiguracja niezbędnych elementów środowiska deweloperskiego (m.in. baza 
danych, cache, xdebug, virtual host) 
• Synchronizacja folderów 
• Dostęp przez ssh
Komendy 
• vagrant box add – dodanie nowego boxa z wybranym systemem 
operacyjnym 
• vagrant init – inicjalizacja vagranta w wybranym katalogu 
• vagrant up – start maszyny wirtualnej 
• vagrant provision – pliki inicjalizujące maszynę przy starcie 
• vagrant ssh – połączenie przez ssh 
• vagrant halt – wstrzymanie maszyny 
• vagrant destroy – usunięcie maszyny
VagrantFile 
• Wybór boxa 
• Synchronizowanie folderów 
• Konfiguracja wirtualnej 
maszyny (ram, ilość rdzeni) 
• Konfiguracja sieci 
• Forwardowanie portów 
• Dostęp przez ssh 
• Konfiguracja plików 
„rozruchowych” 
• …
Vagrant, Git, App 
• Aplikacja i VagrantFile w jednym 
repozytorium GIT 
• Po sklonowaniu repozytorium i dodaniu 
wpisu w hosts aplikacja uruchamia się 
lokalnie
Proces 
• Instalacja Virtual Boxa lub VMWare 
• Instalacja vagranta 
• Git clone na repozytorium 
• Uruchomienie komendy vagrant up w katalogu root aplikacji
Co zyskujemy? 
• Bezpieczniejszy development dzięki identycznej konfiguracji maszyn deweloperskich, 
testowych, stagingowych i produkcyjnych. 
• Szybkie wdrażania nowych członków zespołu w projekt 
• Wersjonowanie zmian nie tylko w aplikacji, ale i na maszynie wirtualnej 
• Możliwość tworzenia re-użytecznych pluginów wykorzystywanych przy innych 
projektach
Przydatne linki 
• http://docs.vagrantup.com/ - dokumentacja vagranta 
• http://www.vagrantbox.es/ - współdzielenie boxów 
• http://puppetlabs.com – paczki z gotowymi „receptami” na konfiguracje VM
Zautomatyzowane 
środowisko 
deweloperskie. 
DEMO
Dziękuję za uwagę 
Maciej Rudnicki

Contenu connexe

Tendances

Vagrant - RuPy Tuesday
Vagrant - RuPy TuesdayVagrant - RuPy Tuesday
Vagrant - RuPy TuesdayGaldoMedia
 
Kubernetes (Canary) Deployments
Kubernetes (Canary) DeploymentsKubernetes (Canary) Deployments
Kubernetes (Canary) DeploymentsThe Software House
 
Devbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyDevbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyMarek Bleschke
 
LXC - kontener pingwinów
LXC - kontener pingwinówLXC - kontener pingwinów
LXC - kontener pingwinówgnosek
 
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PROIDEA
 
Jak zostać mobile deweloperem w 1 dzień
Jak zostać mobile deweloperem w 1 dzieńJak zostać mobile deweloperem w 1 dzień
Jak zostać mobile deweloperem w 1 dzieńPaweł Kondraciuk
 
Proste REST API z użyciem play i slick
Proste REST API z użyciem play i slickProste REST API z użyciem play i slick
Proste REST API z użyciem play i slickSoftwareMill
 
Ansible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITAnsible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITKamil Grabowski
 
Lokalny development z kubernetes
Lokalny development z kubernetesLokalny development z kubernetes
Lokalny development z kubernetesPiotr Mińkowski
 
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerFull Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerMarek Będkowski
 
Kubernetes: from zero to be hero
Kubernetes: from zero to be heroKubernetes: from zero to be hero
Kubernetes: from zero to be heroThe Software House
 
Kubernetes - 0 do 1 - 4Developers Warszawa 2019
Kubernetes - 0 do 1 - 4Developers Warszawa 2019Kubernetes - 0 do 1 - 4Developers Warszawa 2019
Kubernetes - 0 do 1 - 4Developers Warszawa 2019Michał Kurzeja
 
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Mateusz Paprocki, PMP
 
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...PROIDEA
 

Tendances (20)

Vagrant - RuPy Tuesday
Vagrant - RuPy TuesdayVagrant - RuPy Tuesday
Vagrant - RuPy Tuesday
 
Infrastructure As Code
Infrastructure As CodeInfrastructure As Code
Infrastructure As Code
 
Kubernetes (Canary) Deployments
Kubernetes (Canary) DeploymentsKubernetes (Canary) Deployments
Kubernetes (Canary) Deployments
 
Rundeck & Ansible
Rundeck & AnsibleRundeck & Ansible
Rundeck & Ansible
 
Devbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyDevbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracy
 
Websockety w PHP
Websockety w PHPWebsockety w PHP
Websockety w PHP
 
Monitoring sieci
Monitoring sieciMonitoring sieci
Monitoring sieci
 
LXC - kontener pingwinów
LXC - kontener pingwinówLXC - kontener pingwinów
LXC - kontener pingwinów
 
Ansible w praktyce
Ansible w praktyceAnsible w praktyce
Ansible w praktyce
 
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
 
Jak zostać mobile deweloperem w 1 dzień
Jak zostać mobile deweloperem w 1 dzieńJak zostać mobile deweloperem w 1 dzień
Jak zostać mobile deweloperem w 1 dzień
 
PyLadies #4
PyLadies #4PyLadies #4
PyLadies #4
 
Proste REST API z użyciem play i slick
Proste REST API z użyciem play i slickProste REST API z użyciem play i slick
Proste REST API z użyciem play i slick
 
Ansible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITAnsible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań IT
 
Lokalny development z kubernetes
Lokalny development z kubernetesLokalny development z kubernetes
Lokalny development z kubernetes
 
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerFull Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
 
Kubernetes: from zero to be hero
Kubernetes: from zero to be heroKubernetes: from zero to be hero
Kubernetes: from zero to be hero
 
Kubernetes - 0 do 1 - 4Developers Warszawa 2019
Kubernetes - 0 do 1 - 4Developers Warszawa 2019Kubernetes - 0 do 1 - 4Developers Warszawa 2019
Kubernetes - 0 do 1 - 4Developers Warszawa 2019
 
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
 
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...
PLNOG15: OpenStack + OpenContrail - from inception to implementation - Tomasz...
 

En vedette

Michał Sadowski: Nowoczesne metody promocji marki w sieci
Michał Sadowski: Nowoczesne metody promocji marki w sieciMichał Sadowski: Nowoczesne metody promocji marki w sieci
Michał Sadowski: Nowoczesne metody promocji marki w sieciMeet Magento Poland
 
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in Magento
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in MagentoAndrei Vashkievich: 5 Steps For No-SPAM E-mails in Magento
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in MagentoMeet Magento Poland
 
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...Meet Magento Poland
 
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...Meet Magento Poland
 
Rytis Lauris: Missed opportunities of automated
cart recovery messages
Rytis Lauris: Missed opportunities of automated
cart recovery messagesRytis Lauris: Missed opportunities of automated
cart recovery messages
Rytis Lauris: Missed opportunities of automated
cart recovery messagesMeet Magento Poland
 
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w Magento
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w MagentoMaciej Ostrowski: Podstawy implementacji multi-inwentarza w Magento
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w MagentoMeet Magento Poland
 
Fabrizio Balliano: Tracking visitors despite Varnish
Fabrizio Balliano: Tracking visitors despite VarnishFabrizio Balliano: Tracking visitors despite Varnish
Fabrizio Balliano: Tracking visitors despite VarnishMeet Magento Poland
 
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...Meet Magento Poland
 
Davide Consonni: Best Practices to Improve Customer Experience and Conversions
Davide Consonni: Best Practices to Improve Customer Experience and ConversionsDavide Consonni: Best Practices to Improve Customer Experience and Conversions
Davide Consonni: Best Practices to Improve Customer Experience and ConversionsMeet Magento Poland
 
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordable
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordableAlex Ursa: ERP Integrations with Magento: How to do it fast, good and affordable
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordableMeet Magento Poland
 
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAP
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAPRobert Żochowski, Jarosław Gąsiorek: Integracja Magento SAP
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAPMeet Magento Poland
 
Toni Anicic: Conversion Rate Optimization for Magento in the Age of Responsive
Toni Anicic: Conversion Rate Optimization for Magento  in the Age of ResponsiveToni Anicic: Conversion Rate Optimization for Magento  in the Age of Responsive
Toni Anicic: Conversion Rate Optimization for Magento in the Age of ResponsiveMeet Magento Poland
 
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerce
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commercePaulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerce
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerceMeet Magento Poland
 
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOL
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOLFabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOL
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOLMeet Magento Poland
 

En vedette (16)

Vagrant workshop
Vagrant workshopVagrant workshop
Vagrant workshop
 
Michał Sadowski: Nowoczesne metody promocji marki w sieci
Michał Sadowski: Nowoczesne metody promocji marki w sieciMichał Sadowski: Nowoczesne metody promocji marki w sieci
Michał Sadowski: Nowoczesne metody promocji marki w sieci
 
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in Magento
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in MagentoAndrei Vashkievich: 5 Steps For No-SPAM E-mails in Magento
Andrei Vashkievich: 5 Steps For No-SPAM E-mails in Magento
 
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...
Mateusz Rzetecki: Redesign serwisu w zgodzie z działaniami SEO - o czym pamię...
 
Daniel Sloof: Magento on HHVM
Daniel Sloof: Magento on HHVMDaniel Sloof: Magento on HHVM
Daniel Sloof: Magento on HHVM
 
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...
Wiktor Naskręt: Jednorazowa przygoda, przelotna znajomość, 
zżyte małżeństwo...
 
Rytis Lauris: Missed opportunities of automated
cart recovery messages
Rytis Lauris: Missed opportunities of automated
cart recovery messagesRytis Lauris: Missed opportunities of automated
cart recovery messages
Rytis Lauris: Missed opportunities of automated
cart recovery messages
 
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w Magento
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w MagentoMaciej Ostrowski: Podstawy implementacji multi-inwentarza w Magento
Maciej Ostrowski: Podstawy implementacji multi-inwentarza w Magento
 
Fabrizio Balliano: Tracking visitors despite Varnish
Fabrizio Balliano: Tracking visitors despite VarnishFabrizio Balliano: Tracking visitors despite Varnish
Fabrizio Balliano: Tracking visitors despite Varnish
 
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...
Patrycja Andrzejewska: Responsive checkout - Jak zoptymalizować proces zakup...
 
Davide Consonni: Best Practices to Improve Customer Experience and Conversions
Davide Consonni: Best Practices to Improve Customer Experience and ConversionsDavide Consonni: Best Practices to Improve Customer Experience and Conversions
Davide Consonni: Best Practices to Improve Customer Experience and Conversions
 
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordable
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordableAlex Ursa: ERP Integrations with Magento: How to do it fast, good and affordable
Alex Ursa: ERP Integrations with Magento: How to do it fast, good and affordable
 
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAP
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAPRobert Żochowski, Jarosław Gąsiorek: Integracja Magento SAP
Robert Żochowski, Jarosław Gąsiorek: Integracja Magento SAP
 
Toni Anicic: Conversion Rate Optimization for Magento in the Age of Responsive
Toni Anicic: Conversion Rate Optimization for Magento  in the Age of ResponsiveToni Anicic: Conversion Rate Optimization for Magento  in the Age of Responsive
Toni Anicic: Conversion Rate Optimization for Magento in the Age of Responsive
 
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerce
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commercePaulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerce
Paulina Rutecka: Trudni klienci jako choroba przenoszona drogą e-commerce
 
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOL
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOLFabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOL
Fabien Blechschmidt: HYPERTEXT TRANSFER PROTOCOL
 

Similaire à Maciej Rudnicki: Zautomatyzowane środowisko deweloperskie.

Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkitbartosz_w
 
Deployment kodu z Capistrano
Deployment kodu z CapistranoDeployment kodu z Capistrano
Deployment kodu z CapistranoMichał Szajbe
 
Zastosowanie buildout przy wdrażaniu projektów opartych o framework Django
Zastosowanie buildout przy wdrażaniu projektów opartych o framework DjangoZastosowanie buildout przy wdrażaniu projektów opartych o framework Django
Zastosowanie buildout przy wdrażaniu projektów opartych o framework DjangoDominik Szopa
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITamarekmisztal
 
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'a
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'aUruchomienie i praca z laravel w wirtualnym kontenerze docker'a
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'aLaravel Poland MeetUp
 
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...HighSolutions Sp. z o.o.
 
Środowisko testowe pod REST-a
Środowisko testowe pod REST-aŚrodowisko testowe pod REST-a
Środowisko testowe pod REST-aFuture Processing
 
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Lukasz Kaluzny
 
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16Krzysztof Synak
 
Jak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITJak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITGOG.com dev team
 
Word up warszawa 2015
Word up warszawa 2015Word up warszawa 2015
Word up warszawa 2015Tomasz Dziuda
 
Kubernetes i Docker Swarm - Tomasz Woszczynski
Kubernetes i Docker Swarm - Tomasz WoszczynskiKubernetes i Docker Swarm - Tomasz Woszczynski
Kubernetes i Docker Swarm - Tomasz Woszczynskiduchowe50k
 
Webinar - Podstawy Node.js
Webinar - Podstawy Node.jsWebinar - Podstawy Node.js
Webinar - Podstawy Node.jsWojciech Kaniuka
 
Wprowadzenie do Cloud OS
Wprowadzenie do Cloud OSWprowadzenie do Cloud OS
Wprowadzenie do Cloud OSLukasz Kaluzny
 
Selenium
SeleniumSelenium
SeleniumPROSKAR
 
Zabezpiecz swoją stronę w Joomla!
Zabezpiecz swoją stronę w Joomla!Zabezpiecz swoją stronę w Joomla!
Zabezpiecz swoją stronę w Joomla!Wojciech Klocek
 
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...PROIDEA
 
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...GOG.com dev team
 

Similaire à Maciej Rudnicki: Zautomatyzowane środowisko deweloperskie. (20)

Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
Deployment kodu z Capistrano
Deployment kodu z CapistranoDeployment kodu z Capistrano
Deployment kodu z Capistrano
 
Zastosowanie buildout przy wdrażaniu projektów opartych o framework Django
Zastosowanie buildout przy wdrażaniu projektów opartych o framework DjangoZastosowanie buildout przy wdrażaniu projektów opartych o framework Django
Zastosowanie buildout przy wdrażaniu projektów opartych o framework Django
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
 
JavaScript, Moduły
JavaScript, ModułyJavaScript, Moduły
JavaScript, Moduły
 
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'a
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'aUruchomienie i praca z laravel w wirtualnym kontenerze docker'a
Uruchomienie i praca z laravel w wirtualnym kontenerze docker'a
 
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...
Laravel Poznań Meetup #3 - Uruchomienie i praca z Laravel w wirtualnym konten...
 
Środowisko testowe pod REST-a
Środowisko testowe pod REST-aŚrodowisko testowe pod REST-a
Środowisko testowe pod REST-a
 
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
Jak zbudować aplikacje z wykorzystaniem funkcjonalności windows server 2016...
 
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
 
Jak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITJak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com IT
 
Word up warszawa 2015
Word up warszawa 2015Word up warszawa 2015
Word up warszawa 2015
 
Kubernetes i Docker Swarm - Tomasz Woszczynski
Kubernetes i Docker Swarm - Tomasz WoszczynskiKubernetes i Docker Swarm - Tomasz Woszczynski
Kubernetes i Docker Swarm - Tomasz Woszczynski
 
Apache 2.0 dla zaawansowanych
Apache 2.0 dla zaawansowanychApache 2.0 dla zaawansowanych
Apache 2.0 dla zaawansowanych
 
Webinar - Podstawy Node.js
Webinar - Podstawy Node.jsWebinar - Podstawy Node.js
Webinar - Podstawy Node.js
 
Wprowadzenie do Cloud OS
Wprowadzenie do Cloud OSWprowadzenie do Cloud OS
Wprowadzenie do Cloud OS
 
Selenium
SeleniumSelenium
Selenium
 
Zabezpiecz swoją stronę w Joomla!
Zabezpiecz swoją stronę w Joomla!Zabezpiecz swoją stronę w Joomla!
Zabezpiecz swoją stronę w Joomla!
 
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...
 
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...
Dystrybucja gier w świecie online, przykład architektury webowego systemu ro...
 

Plus de Meet Magento Poland

Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buy
Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buyEugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buy
Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buyMeet Magento Poland
 
Krzysztof Wroński: Let’s do this project... together!
Krzysztof Wroński: Let’s do this project... together!Krzysztof Wroński: Let’s do this project... together!
Krzysztof Wroński: Let’s do this project... together!Meet Magento Poland
 
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...Meet Magento Poland
 
Viacheslav Kravchuk: Conversion rate optimisation. What’s really proved to m...
Viacheslav Kravchuk: Conversion rate optimisation.  What’s really proved to m...Viacheslav Kravchuk: Conversion rate optimisation.  What’s really proved to m...
Viacheslav Kravchuk: Conversion rate optimisation. What’s really proved to m...Meet Magento Poland
 
Thomas Goletz: Commerce & growth – why is it important to have a broader view
Thomas Goletz: Commerce & growth – why is it important to have a broader viewThomas Goletz: Commerce & growth – why is it important to have a broader view
Thomas Goletz: Commerce & growth – why is it important to have a broader viewMeet Magento Poland
 
Bartosz Zieleźnik: Nastaw się na Agile
Bartosz Zieleźnik: Nastaw się na AgileBartosz Zieleźnik: Nastaw się na Agile
Bartosz Zieleźnik: Nastaw się na AgileMeet Magento Poland
 
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...Meet Magento Poland
 
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunity
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunityGanna Yevtushenko: PayPal - Unlocking global e-commerce opportunity
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunityMeet Magento Poland
 

Plus de Meet Magento Poland (8)

Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buy
Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buyEugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buy
Eugene Vtorov: Integration of eCommerce and 3D Technologies: see what you buy
 
Krzysztof Wroński: Let’s do this project... together!
Krzysztof Wroński: Let’s do this project... together!Krzysztof Wroński: Let’s do this project... together!
Krzysztof Wroński: Let’s do this project... together!
 
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...
Mateusz Falkowski: Merchandising w e-commerce. Zarządzanie produktem i pozyc...
 
Viacheslav Kravchuk: Conversion rate optimisation. What’s really proved to m...
Viacheslav Kravchuk: Conversion rate optimisation.  What’s really proved to m...Viacheslav Kravchuk: Conversion rate optimisation.  What’s really proved to m...
Viacheslav Kravchuk: Conversion rate optimisation. What’s really proved to m...
 
Thomas Goletz: Commerce & growth – why is it important to have a broader view
Thomas Goletz: Commerce & growth – why is it important to have a broader viewThomas Goletz: Commerce & growth – why is it important to have a broader view
Thomas Goletz: Commerce & growth – why is it important to have a broader view
 
Bartosz Zieleźnik: Nastaw się na Agile
Bartosz Zieleźnik: Nastaw się na AgileBartosz Zieleźnik: Nastaw się na Agile
Bartosz Zieleźnik: Nastaw się na Agile
 
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...
Paweł Sala: 3 sprawdzone metody na zwiększenie konwersji z e-mail marketingu ...
 
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunity
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunityGanna Yevtushenko: PayPal - Unlocking global e-commerce opportunity
Ganna Yevtushenko: PayPal - Unlocking global e-commerce opportunity
 

Maciej Rudnicki: Zautomatyzowane środowisko deweloperskie.

  • 2. Wirtualizacja środowiska Wirtualizacja i automatyzacja środowiska deweloperskiego przy użyciu: VAGRANT & GIT
  • 3. Dlaczego wirtualizacja? • Spójne środowiska przy wielu projektach • Łatwość wdrażania nowych programistów w projekt • Dev env = Prod env
  • 4. Vagrant Zautomatyzowana konfiguracja wielu środowisk deweloperskich. • Instalacja niezbędnego oprogramowania podczas uruchamiania maszyny • Konfiguracja niezbędnych elementów środowiska deweloperskiego (m.in. baza danych, cache, xdebug, virtual host) • Synchronizacja folderów • Dostęp przez ssh
  • 5. Komendy • vagrant box add – dodanie nowego boxa z wybranym systemem operacyjnym • vagrant init – inicjalizacja vagranta w wybranym katalogu • vagrant up – start maszyny wirtualnej • vagrant provision – pliki inicjalizujące maszynę przy starcie • vagrant ssh – połączenie przez ssh • vagrant halt – wstrzymanie maszyny • vagrant destroy – usunięcie maszyny
  • 6. VagrantFile • Wybór boxa • Synchronizowanie folderów • Konfiguracja wirtualnej maszyny (ram, ilość rdzeni) • Konfiguracja sieci • Forwardowanie portów • Dostęp przez ssh • Konfiguracja plików „rozruchowych” • …
  • 7. Vagrant, Git, App • Aplikacja i VagrantFile w jednym repozytorium GIT • Po sklonowaniu repozytorium i dodaniu wpisu w hosts aplikacja uruchamia się lokalnie
  • 8. Proces • Instalacja Virtual Boxa lub VMWare • Instalacja vagranta • Git clone na repozytorium • Uruchomienie komendy vagrant up w katalogu root aplikacji
  • 9. Co zyskujemy? • Bezpieczniejszy development dzięki identycznej konfiguracji maszyn deweloperskich, testowych, stagingowych i produkcyjnych. • Szybkie wdrażania nowych członków zespołu w projekt • Wersjonowanie zmian nie tylko w aplikacji, ale i na maszynie wirtualnej • Możliwość tworzenia re-użytecznych pluginów wykorzystywanych przy innych projektach
  • 10. Przydatne linki • http://docs.vagrantup.com/ - dokumentacja vagranta • http://www.vagrantbox.es/ - współdzielenie boxów • http://puppetlabs.com – paczki z gotowymi „receptami” na konfiguracje VM
  • 12. Dziękuję za uwagę Maciej Rudnicki