SlideShare uma empresa Scribd logo
1 de 10
Vagrant Leszek Smentek
Vagrant w kilku słowach Vagrant jest narzędziem do zarządzania i konfiguracji wirtualnych środowisk. Opiera się o znane i sprawdzone technologie. Nie jest rozwiązanie dedykowanym konkretnemu zastosowaniu czy językowi dzięki czemu może być stosowane w wielu dziedzinach. Główne zalety: - szybkość tworzenia nowych wyspecjalizowanych środowisk - łatwość i prostota tworzenia nowych konfiguracji - przenośność  - duża ilość domyślnych rozwiązań na których można oprzeć własne konfiguracje - możliwość rozbudowy o własne mechanizmy
Wykorzystywane technologie  - VirtualBox - Ruby - Chef - Puppet - SSH
Struktura projektu - Sercem środowiska jest pojedynczy plik Vagrant, który zawiera informacje niezbędne do instalacji i konfiguracji wirtualnego środowiska.  - Plik jest w formacie tekstowym i zawiera kod języka Ruby.  - Niewielki rozmiar pozwala na dołączenie do repozytorium, co daje możliwość przechowywania dedykowanego środowiska dla każdego projektu razem ze źródłami.
Gdzie można zastosować wirtualne środowisko ? - Teoretycznie wirtualne środowisko można wykorzystać w procesie tworzenia dowolnego typu aplikacji. Takie rozwiązanie daje pewność tego, że gotowy produkt zachowa się w sposób identyczny jak podczas produkcji .  - Praktycznie środowisko wirtualne opłaca się stosować wszędzie tam gdzie istnieje konieczność stosowania rozwiązań opartych konfiguracji serwera, który będzie hostem dla gotowej aplikacji.
Przykłady Prosty przykład konfiguracji: Instalacja narzędzi: $ gem install vagrant $ vagrant box add lucid32 http://files.vagrantup.com/lucid32.box $ vagrant init Inicjalizacja środowiska: $ vagrant up Logowanie do wirtualnej maszyny: $ vagrant ssh Zakończenie pracy ze środowiskiem: $ vagrant down
Plik Vagrant Vagrant::Config.run do |config| config.vm.box = "lucid32" # Enable and configure the chef solo provisioner config.vm.provision :chef_solo do |chef| # We're going to download our cookbooks from the web # chef.recipe_url = "http://files.vagrantup.com/getting_started/cookbooks.tar.gz" chef.cookbooks_path = "cookbooks" chef.add_recipe "apache2" chef.add_recipe "postgresql" chef.add_recipe "rails" chef.add_recipe "passenger_apache2::mod_rails" # Tell chef what recipe to run. In this case, the `vagrant_main` recipe # does all the magic. chef.add_recipe("vagrant_main") end end
Przydatne linki - VirtualBox: http://www.virtualbox.org/ - Vagrant: http://vagrantup.com/ - Chef: http://www.opscode.com/chef/ - Puppet: http://www.puppetlabs.com/puppet/introduction/
Pytania
Dziękuję za uwagę

Mais conteúdo relacionado

Mais procurados

Devbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyDevbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyMarek Bleschke
 
Testowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackTestowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackThe Software House
 
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.
 
3Camp Tech 2016/11/15 - Front-end tooling: package managers
3Camp Tech 2016/11/15 - Front-end tooling: package managers3Camp Tech 2016/11/15 - Front-end tooling: package managers
3Camp Tech 2016/11/15 - Front-end tooling: package managersMichał Michalczuk
 
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
 
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...Kainos Polska
 
Wprowadzenie do testów wydajnościowych w k6
Wprowadzenie do testów wydajnościowych w k6Wprowadzenie do testów wydajnościowych w k6
Wprowadzenie do testów wydajnościowych w k6The Software House
 
Debugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebugDebugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebugXSolve
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkitbartosz_w
 
Xdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHPXdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHP3camp
 
Metaprogramowanie w JS
Metaprogramowanie w JSMetaprogramowanie w JS
Metaprogramowanie w JSDawid Rusnak
 
Ansible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITAnsible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITKamil Grabowski
 
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]Krzysztof Głuszczyk
 
Deployment kodu z Capistrano
Deployment kodu z CapistranoDeployment kodu z Capistrano
Deployment kodu z CapistranoMichał Szajbe
 
Szybkie stawianie aplikacji z Elastic Beanstalk
Szybkie stawianie aplikacji z Elastic BeanstalkSzybkie stawianie aplikacji z Elastic Beanstalk
Szybkie stawianie aplikacji z Elastic BeanstalkThe Software House
 

Mais procurados (20)

Devbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracyDevbox - wirtualne środowisko pracy
Devbox - wirtualne środowisko pracy
 
Testowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStackTestowanie rozwiązań serverless z LocalStack
Testowanie rozwiązań serverless z LocalStack
 
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...
 
Make deploy great again!
Make deploy great again!Make deploy great again!
Make deploy great again!
 
3Camp Tech 2016/11/15 - Front-end tooling: package managers
3Camp Tech 2016/11/15 - Front-end tooling: package managers3Camp Tech 2016/11/15 - Front-end tooling: package managers
3Camp Tech 2016/11/15 - Front-end tooling: package managers
 
Ansible w praktyce
Ansible w praktyceAnsible w praktyce
Ansible w praktyce
 
PHP-PM. Hit czy kit?
PHP-PM. Hit czy kit?PHP-PM. Hit czy kit?
PHP-PM. Hit czy kit?
 
Rundeck & Ansible
Rundeck & AnsibleRundeck & Ansible
Rundeck & Ansible
 
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ń
 
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...
Kainos Tech Space #1 : DevOps : Artur Senk - Jenkins, najważniejsze narzędzie...
 
Wprowadzenie do testów wydajnościowych w k6
Wprowadzenie do testów wydajnościowych w k6Wprowadzenie do testów wydajnościowych w k6
Wprowadzenie do testów wydajnościowych w k6
 
Debugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebugDebugowanie skryptow php za pomoca xdebug
Debugowanie skryptow php za pomoca xdebug
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
Xdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHPXdebug – debugowanie i profilowanie aplikacji PHP
Xdebug – debugowanie i profilowanie aplikacji PHP
 
Metaprogramowanie w JS
Metaprogramowanie w JSMetaprogramowanie w JS
Metaprogramowanie w JS
 
Ansible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań ITAnsible - Automatyzacja zadań IT
Ansible - Automatyzacja zadań IT
 
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]
Wielomodułowe aplikacje korzystające ze wspólnej bazy kodu [PL]
 
Deployment kodu z Capistrano
Deployment kodu z CapistranoDeployment kodu z Capistrano
Deployment kodu z Capistrano
 
Szybkie stawianie aplikacji z Elastic Beanstalk
Szybkie stawianie aplikacji z Elastic BeanstalkSzybkie stawianie aplikacji z Elastic Beanstalk
Szybkie stawianie aplikacji z Elastic Beanstalk
 

Semelhante a Vagrant - RuPy Tuesday

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
 
Automatyzacja tworzenia maszyn wirtualnych Magdalena Wojnarowska
Automatyzacja tworzenia maszyn wirtualnych Magdalena WojnarowskaAutomatyzacja tworzenia maszyn wirtualnych Magdalena Wojnarowska
Automatyzacja tworzenia maszyn wirtualnych Magdalena WojnarowskaWomen in Technology Poland
 
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
 
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposePrzenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposeMariusz Bąk
 
2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...Janusz Nowak
 
Serwer internetowy w systemie Linux
Serwer internetowy w systemie LinuxSerwer internetowy w systemie Linux
Serwer internetowy w systemie Linuxbm9ib2r5
 
Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014Tomasz Dziuda
 
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
 
WordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceWordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceDawid Urbański
 
PHP@Docker - w produkcji
PHP@Docker - w produkcjiPHP@Docker - w produkcji
PHP@Docker - w produkcjiMarcin Kurzyna
 
Firebird in 2 minutes (polish)
Firebird in 2 minutes (polish)Firebird in 2 minutes (polish)
Firebird in 2 minutes (polish)Mind The Firebird
 
Automatyczne testy end-to-end aplikacji JavaScript.
Automatyczne testy end-to-end aplikacji JavaScript.Automatyczne testy end-to-end aplikacji JavaScript.
Automatyczne testy end-to-end aplikacji JavaScript.Future Processing
 
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux PROIDEA
 

Semelhante a Vagrant - RuPy Tuesday (20)

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...
 
Automatyzacja tworzenia maszyn wirtualnych Magdalena Wojnarowska
Automatyzacja tworzenia maszyn wirtualnych Magdalena WojnarowskaAutomatyzacja tworzenia maszyn wirtualnych Magdalena Wojnarowska
Automatyzacja tworzenia maszyn wirtualnych Magdalena Wojnarowska
 
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
 
JavaScript, Moduły
JavaScript, ModułyJavaScript, Moduły
JavaScript, Moduły
 
Środowisko PWA
Środowisko PWAŚrodowisko PWA
Środowisko PWA
 
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker ComposePrzenieś się do kontenera, czyli korzyści z Docker i Docker Compose
Przenieś się do kontenera, czyli korzyści z Docker i Docker Compose
 
GCP & Wordpress
GCP & WordpressGCP & Wordpress
GCP & Wordpress
 
Poznaj Firebird w dwie minuty
Poznaj Firebird w dwie minutyPoznaj Firebird w dwie minuty
Poznaj Firebird w dwie minuty
 
2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...
 
Docker
DockerDocker
Docker
 
Serwer internetowy w systemie Linux
Serwer internetowy w systemie LinuxSerwer internetowy w systemie Linux
Serwer internetowy w systemie Linux
 
Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014Daj się wyręczyć - Joomla Day Polska 2014
Daj się wyręczyć - Joomla Day Polska 2014
 
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
 
WordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyceWordUp Trójmiasto - Sage 9 w praktyce
WordUp Trójmiasto - Sage 9 w praktyce
 
PHP@Docker - w produkcji
PHP@Docker - w produkcjiPHP@Docker - w produkcji
PHP@Docker - w produkcji
 
Firebird in 2 minutes (polish)
Firebird in 2 minutes (polish)Firebird in 2 minutes (polish)
Firebird in 2 minutes (polish)
 
Automatyczne testy end-to-end aplikacji JavaScript.
Automatyczne testy end-to-end aplikacji JavaScript.Automatyczne testy end-to-end aplikacji JavaScript.
Automatyczne testy end-to-end aplikacji JavaScript.
 
Vagrant workshop
Vagrant workshopVagrant workshop
Vagrant workshop
 
Apache 2.0 dla zaawansowanych
Apache 2.0 dla zaawansowanychApache 2.0 dla zaawansowanych
Apache 2.0 dla zaawansowanych
 
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux
PLNOG 4: Piotr Siwczak - Zarządzanie farmami serwerów Linux
 

Vagrant - RuPy Tuesday

  • 2. Vagrant w kilku słowach Vagrant jest narzędziem do zarządzania i konfiguracji wirtualnych środowisk. Opiera się o znane i sprawdzone technologie. Nie jest rozwiązanie dedykowanym konkretnemu zastosowaniu czy językowi dzięki czemu może być stosowane w wielu dziedzinach. Główne zalety: - szybkość tworzenia nowych wyspecjalizowanych środowisk - łatwość i prostota tworzenia nowych konfiguracji - przenośność - duża ilość domyślnych rozwiązań na których można oprzeć własne konfiguracje - możliwość rozbudowy o własne mechanizmy
  • 3. Wykorzystywane technologie - VirtualBox - Ruby - Chef - Puppet - SSH
  • 4. Struktura projektu - Sercem środowiska jest pojedynczy plik Vagrant, który zawiera informacje niezbędne do instalacji i konfiguracji wirtualnego środowiska. - Plik jest w formacie tekstowym i zawiera kod języka Ruby. - Niewielki rozmiar pozwala na dołączenie do repozytorium, co daje możliwość przechowywania dedykowanego środowiska dla każdego projektu razem ze źródłami.
  • 5. Gdzie można zastosować wirtualne środowisko ? - Teoretycznie wirtualne środowisko można wykorzystać w procesie tworzenia dowolnego typu aplikacji. Takie rozwiązanie daje pewność tego, że gotowy produkt zachowa się w sposób identyczny jak podczas produkcji . - Praktycznie środowisko wirtualne opłaca się stosować wszędzie tam gdzie istnieje konieczność stosowania rozwiązań opartych konfiguracji serwera, który będzie hostem dla gotowej aplikacji.
  • 6. Przykłady Prosty przykład konfiguracji: Instalacja narzędzi: $ gem install vagrant $ vagrant box add lucid32 http://files.vagrantup.com/lucid32.box $ vagrant init Inicjalizacja środowiska: $ vagrant up Logowanie do wirtualnej maszyny: $ vagrant ssh Zakończenie pracy ze środowiskiem: $ vagrant down
  • 7. Plik Vagrant Vagrant::Config.run do |config| config.vm.box = "lucid32" # Enable and configure the chef solo provisioner config.vm.provision :chef_solo do |chef| # We're going to download our cookbooks from the web # chef.recipe_url = "http://files.vagrantup.com/getting_started/cookbooks.tar.gz" chef.cookbooks_path = "cookbooks" chef.add_recipe "apache2" chef.add_recipe "postgresql" chef.add_recipe "rails" chef.add_recipe "passenger_apache2::mod_rails" # Tell chef what recipe to run. In this case, the `vagrant_main` recipe # does all the magic. chef.add_recipe("vagrant_main") end end
  • 8. Przydatne linki - VirtualBox: http://www.virtualbox.org/ - Vagrant: http://vagrantup.com/ - Chef: http://www.opscode.com/chef/ - Puppet: http://www.puppetlabs.com/puppet/introduction/