[{"data":1,"prerenderedAt":135},["ShallowReactive",2],{"project-22890612":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":15,"aspects":32,"strip":37,"post_text":29,"what":39,"said":58,"maker_in_thread":87,"shape":89,"grid":92,"attempts":98,"same_week":99,"maker_shows":91,"maker_hidden":128,"reader_version":129,"card":130},"22890612","Earthly","Build automation for the container era","title","Show HN: Earthly – Build automation for the container era","https:\u002F\u002Fgithub.com\u002Fvladaionescu\u002Fearthly","github.com","vladaionescu",1587052180,2020,63,3,942,3028,32,"notable","dev_tools","build automation","cli",[21,24,25,26,27],"makefile","dockerfile","containers","deterministic builds","quiet",null,{"positive":15,"neutral":31,"mixed":31,"critical":31},0,{"idea":33,"design":35},{"positive":34,"critical":31},2,{"positive":36,"critical":31},1,[38,38,38],5,{"problem":40,"audience":29,"pricing":29,"motivation":29,"time_to_build":29,"stack":48,"openness":57,"stage":57,"team_size":57},{"value":41,"source":42,"evidence":43},"Ad-hoc shell scripts and non-deterministic builds in container workflows","commenter",[44],{"id":45,"by":46,"text":47},"22890795","scg","It's basically Makefile + Dockerfile combined. That's useful because you can get rid of ad-hoc shell scripts, and builds are deterministic.",[49],{"value":50,"source":42,"evidence":51},"Docker",[52,53],{"id":45,"by":46,"text":47},{"id":54,"by":55,"text":56},"22890743","Avernar","The ability to create a docker image from multiple sub-images is pretty useful. I think you could also use Dockerfile multi stage builds for that, but it’s not as clean.","unknown",{"praise":59,"objections":75,"requests":76,"questions":77,"alternatives":78},[60,64,68],{"value":61,"source":42,"evidence":62},"Useful idea: removes ad-hoc shell scripts and makes builds deterministic",[63],{"id":45,"by":46,"text":47},{"value":65,"source":42,"evidence":66},"Multi-image composition is useful and cleaner than Dockerfile multi-stage builds",[67],{"id":54,"by":55,"text":56},{"value":69,"source":42,"evidence":70},"Described as awesome",[71],{"id":72,"by":73,"text":74},"22894499","beagle3","This is awesome. Vlad's blog post at https:\u002F\u002Fvladaionescu.com\u002Fintroducing-earthly-build-automation-for-the-container-era-55619c63c3e is a shorter introduction. Reminds me of…",[],[],[],[79,83],{"value":80,"source":42,"evidence":81},"SourceHut CI",[82],{"id":72,"by":73,"text":74},{"value":84,"source":42,"evidence":85},"Dockerfile multi-stage builds",[86],{"id":54,"by":55,"text":56},{"comments":31,"answered":31,"key":88},[],{"commenters":15,"max_depth":36,"maker_replies":31,"first_comment_mins":90,"lifespan_hours":91},13,7,[93,95,96],[72,31,38,94,73,31],"project\u002Fpositive\u002Fidea",[45,36,38,94,46,31],[54,34,38,97,55,31],"project\u002Fpositive\u002Fdesign",[],[100,105,110,114,119,124],{"id":101,"name":102,"points":103,"category":104},"22898653","A basketball hoop to maximize shots that go in [video]",971,"creative",{"id":106,"name":107,"points":108,"category":109},"22936742","Intention",519,"productivity",{"id":111,"name":112,"points":113,"category":20},"22933697","Pattern.css",332,{"id":115,"name":116,"points":117,"category":118},"22899654","ZoomerBackgrounds",327,"consumer_social",{"id":120,"name":121,"points":122,"category":123},"22907200","WikiWho",246,"data",{"id":125,"name":126,"points":127,"category":20},"22919843","Tip",242,false,"v2",{"id":131,"name":5,"line":6,"ai":128,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":29,"top":18,"kw":132,"maker":11,"domain":10,"tier":19,"attempts":31,"strip":133,"url":9,"mix":134,"praise":61,"objection":-1,"sub":21},22890612,[21,24,25,26,27],"555",[15,31,31,31],1794036589107]