Somary tara aho amin'ny resaka momba ny Tontolo Fampandrosoana Lavitra (fantatra ihany koa amin'ny hoe Environment Development Cloud). Ny tena antony dia tsy niasa tao amin'ny ekipa fampandrosoana aho nandritra ny enin-taona mahery. Na izany aza, miasa ho an'ny Loft Labs aho izao, ary manana vokatra momba ny tontolo iainana lavitra fampandrosoana izahay: DevPod . Te-hahatakatra ny soso-kevitray aho satria ho ao amin'ny FOSDEM miasa ny trano heva DevPod aho.
Amin'ny maha-mpamorona azy teo aloha dia tadidiko tsara ny fangirifirian'ny fametrahana ny tontolo iainan'ny mpamorona tsirairay. Tany am-piandohan'ny asako, ny architect dia tsy maintsy nanamboatra ny milina fampandrosoana ahy tamin'ny fanaintainana mafy, noho izany dia nitovy tamin'ny fananganana azy izany. Taty aoriana dia nanao toy izany koa aho tamin'ireo mpikambana ao amin'ny ekipako. Saika tsy misy fiafarana ny sakan'ny tsy fitovizan-kevitra mety hisy fiantraikany amin'ny fampandrosoana: Rafitra fiasana, mazava ho azy, ny dikan-teny sy ny tsiron'ny SDKs, ohatra , Java's Eclipse Temurin vs SapMachine, git hooks, sns. Hatsembohana, asa, ary rà izany isaky ny tetikasa.
Nandritra ny taona maro dia nahita fomba mahaliana sasany amin'ny famokarana tontolom-pampandrosoana aho. Tamin'ny voalohany dia avy amin'ny VM izy ireo, avy eo avy amin'ny kaontenera. Heveriko fa i Vagrant no fitaovana voalohany nanintona ny saiko: Nanatrika lahateny aho tamin'ny 2012 izay nilazan'ilay mpandahateny fa nampiasa azy io izy mba hananganana milina alohan'ny fotoam-piofanana.
Nivoatra be ny rafitra fampiharana nandritra ny taona maro, lasa sarotra sy be pitsiny. Taona maro lasa izay, ny vintana dia ny hany miankina amin'ny fotodrafitrasa dia ny angona SQL. Ao amin'ny ecosystem JVM, tsara vintana izahay manana JDBC, API izay miasa amin'ny angon-drakitra SQL rehetra. Ny hany ilainao dia ny manoratra SQL mahazatra, ary azonao atao ny manamboatra ny ohatra momba ny angona amin'ny fotoana fandehanana. Miaraka amin'ny angon-drakitra voarakitra toa an'i Apache Derby sy H2 , tsy mila ohatra Oracle natokana ho an'ny mpamorona tsirairay ianao.
Niova ny fotoana. Tsy mahazatra ny fampiharana mila angon-drakitra SQL, angona NoSQL, cluster Kafka, ary serivisy fampiharana vitsivitsy fanampiny. Efa mampiasa teknolojia mifandraika amin'ny kaontenera, ohatra , Docker na Kubernetes, ny fikambanana izay mamolavola fampiharana toy izany, mba hitantana izany fahasarotana izany.
Tsy mamaha ny olana voalohany anefa izany: ahoana no hampifanaraka ny IDE, ny plugins, ny SDK(s), ny git hooks, ary ny zavatra hafa rehetra? Azo inoana fa noheverinao avy amin'ny lohateny hoe-Remote Development Environments.
Tao amin'ny teny fampidirana dia nilaza aho fa ny RDE dia antsoina hoe Cloud Development Environments. Ny hevi-dehibe ao ambadiky ny RDE dia ny mitahiry izay rehetra azonao atao ao anaty rahona ary mizara izany amin'ny mpamorona rehetra. Ho fanampin'izay, tianao izy ireo hiasa manerana ireo mpamatsy rahona miely patrana indrindra sy ireo IDE fampiasa matetika indrindra. Rehefa miseho ny filana toy izany dia fotoana tokony hivorian'ireo mpisehatra indostrialy manodidina ny fenitra iray. Microsoft dia nanomboka ny fenitra Development Container ho an'ny VS Code Remove development plugin ho an'ity tanjona ity.
Ny kaontenera fampandrosoana (na kaontenera dev raha fohy) dia ahafahanao mampiasa kaontenera iray ho tontolo iainana fampandrosoana feno. Azo ampiasaina amin'ny fampandehanana rindranasa iray izy io, hanasarahana fitaovana, tranomboky, na fotoana fampandehanana ilaina amin'ny fiasana amin'ny codebase, ary hanampy amin'ny fampidirana sy fitiliana mitohy. Ny kaontenera dev dia azo atao eo an-toerana na lavitra, amin'ny rahona manokana na ho an'ny daholobe, amin'ny fitaovana sy tonian-dahatsoratra isan-karazany.
Ny Famaritana ny kaontenera momba ny fampandrosoana dia mikatsaka ny hitady fomba hanatsarana ireo endrika efa misy miaraka amin'ny rindran-damina, fitaovana ary fanamafisam-peo manokana momba ny fampandrosoana nefa mbola manome safidy fitahirizana tokana tsotsotra sy tsy voarindra - mba ho azo ampiasaina ho tontolo kaody na ho fampidirana sy fitiliana mitohy. Ankoatra ny metadata fototra amin'ny famaritana, ny spec dia ahafahan'ny mpamorona mizara haingana sy mampiasa indray ny dingana fananganana container amin'ny alàlan'ny Features and Templates.
Ny rakitra fanamafisana dia devcontainer.json
. Azonao atao ny mahita ny reference schema eto . Ny vokatra VS Code, Visual Studio, ary IntelliJ dia afaka mampiasa rakitra devcontainer.json
. Amin'ny lafiny mpamatsy, ny GitHub Codespaces, CodeSandbox, ary DevPod dia manohana azy.
DevPod dia vahaolana mampiasa devcontainer.json
. Mampihatra fananana telo lehibe izy io:
DevPod dia natao ho mora ampiasaina sy mahitsy, mahatonga azy io ho mora ampiasaina. Nanapa-kevitra ny hanoratra ity lahatsoratra ity aho satria nampiaiky volana ahy ny vokatra ary nandamina ny eritreritro.
Ny dingana voalohany dia ny fametrahana ny DevPod mihitsy. Ao amin'ny Mac aho; misy fomba fanamboarana Homebrew.
brew install devpod
Rehefa tafapetraka dia azonao atao ny manomboka azy amin'ny CLI na ny GUI. Tiako ny GUI, amin'ny voalohany, hanampy amin'ny fahatakarana ireo safidy misy.
DevPod dia manolotra mpamatsy: toerana hampandehanana ireo kaontenera. Ny default dia Docker. Azonao atao ny manampy mpamatsy fanampiny, anisan'izany ny Cloud Providers sy Kubernetes clusters.
Ho an'ity lahatsoratra ity dia hitazona an'i Docker aho — mampiasa OrbStack aho. Ankehitriny, eo amin'ny hena. Ndeha ho any amin'ny sakafon'ny toeram-piasana. Raha efa namorona toeram-piasana ianao dia tokony hiseho eto. Koa satria ny fitsidihanay voalohany dia hamorona iray izahay. Tsindrio ny bokotra btn:[Create workspace]. Andeha isika hanandrana ny iray amin'ireo ohatra fanombohana haingana, izany hoe , Rust. Ny IDE safidiko dia IntelliJ IDEA, fa afaka misafidy ny anao ianao. Raha vao nisafidy sary, IDE, ary mpamatsy ianao, tsindrio Mamorona Workspace.
Amin'izao fotoana izao, DevPod dia haka ny sary ary hanokatra ny tetikasa mandeha ao amin'ny OrbStack ao IntelliJ.
Manomboka izao dia afaka manomboka miasa amin'ny tetikasa Rust izahay, matoky fa ny mpikambana rehetra ao amin'ny ekipa dia mampiasa ny dikan-teny Rust mitovy.
Mariho fa amin'ny fotoana voalohany ampiasanao an'ity setup ity dia hisintona ny mpanjifa JetBrains ihany koa ny DevPod. Na izany aza dia fahatarana indray mandeha ny fampidinana.
Toy izany koa ny Git pre-commit hooks, ohatra. Raha tianao ny hivoatra ao anatin'ny IDE hafa dia fidio izany amin'ny fotoana fanombohana, dia tsara ianao. Rehefa vita ny asanao isan'andro dia ajanony ny fitoeran-javatra. Raha mihazakazaka ao amin'ny Cloud ianao dia mitahiry vola. Ny ampitson'iny, avereno indray ilay fitoeran-javatra ary tohizo ny asanao.
DevPod dia fitaovana tsara manodidina ny fehin-taolanao izay ahafahan'ny ekipan'ny mpamolavola anao hizara ny fandrindrana milina mitovy tsy misy olana. Amin'ity lahatsoratra bilaogy fampidirana ity dia nasehoko ny ampahany kely amin'izay azonao atao. Mamporisika anao aho hampiasa ny heriny raha miatrika tontolo fampandrosoana tsy mitovy.
Raha handeha lavitra kokoa: