Vagrant의 도
Vagrant를 설치하거나 작동 방식을 살펴보기 전에, 실제 작업 환경에서 Vagrant의 전반적인 워크플로를 이해하는 것이 중요합니다. 이러한 원칙들을 통틀어 'Vagrant의 도'라고 합니다. 다음은 Vagrant: Up and Running에서 발췌한 내용입니다.
Vagrant가 있는 세상에서 개발자는 버전 관리에서 어떤 저장소든 체크아웃하고, vagrant up을 실행하면 사람의 개입 없이도 완전히 실행되는 개발 환경을 갖출 수 있습니다. 개발자는 자신의 머신에서, 자신에게 익숙한 에디터와 브라우저, 그 밖의 도구를 그대로 사용하며 계속 작업합니다. 개발자에게 Vagrant의 존재는 투명하고 그다지 중요하지 않습니다. Vagrant는 일관되고 안정적인 개발 환경을 만들어내는 일꾼입니다.
시스템 운영 엔지니어는 또한 자신의 머신에 있는 자신의 에디터와 도구로 시스템 자동화 스크립트를 작성합니다. 이 스크립트를 테스트할 준비가 되면 vagrant up을 실행하고, 프로덕션과 동일한 완전한 샌드박스를 갖추어 실제 시나리오와 시스템 자동화를 테스트할 수 있습니다.
시스템 운영 엔지니어가 개발하는 자동화는 프로덕션에서뿐만 아니라 개발에서도 사용됩니다. vagrant up을 실행할 때마다 개발자는 프로덕션을 설정하는 데 사용되는 것과 동일한 스크립트를 사용하여 완전히 프로비저닝된 개발 환경을 얻습니다. 이렇게 함으로써 개발자는 프로덕션과 최대한 유사한 환경에서 작업하게 됩니다.
문제가 발생하거나 단순히 깨끗한 상태에서 다시 시작하려는 경우 개발자와 운영 엔지니어는 +vagrant destroy+를 실행할 수 있습니다. 이 명령은 머신에서 해당 개발 환경의 모든 흔적을 제거합니다. 그런 다음 다시 vagrant up을 실행하면 금방 동일하게 완전히 작동하는 개발 환경이 재생성됩니다.
결국 Vagrant는 개발 환경을 일시 중지, 중지, 또는 삭제하여 전체 시스템을 깨끗하게 유지할 수 있습니다. 이제 개발자는 방치된 서버 프로세스를 종료하는 것을 잊어버려 소중한 컴퓨팅 리소스를 낭비하는 일이 없습니다. 준비가 되면 vagrant up을 실행하면 몇 분 안에 바로 사용할 수 있는 개발 환경이 다시 돌아옵니다.
이 모든 것의 가장 큰 장점은 이 지식이 모든 프로젝트에 적용된다는 점입니다. 프로젝트 A를 하든 프로젝트 B를 하든, 심지어 회사 A나 회사 B에서 일하든, Vagrant의 도를 따르는 한 워크플로는 완전히 동일합니다. 그 결과 생산성이 크게 향상되고 '내 컴퓨터에서는 작동한다'는 버그가 사라집니다.
물론 Vagrant를 사용하기 위해 Vagrant의 도에 있는 모든 원칙을 하나도 빠짐없이 따를 필요는 없습니다. Vagrant는 범용 도구이며 필요에 따라 여러분의 환경에 맞게 조정할 수 있습니다. 그러나 Vagrant 뒤에 있는 더 큰 비전을 보고 이해하는 것이 중요합니다.
글을 무작위로 읽기