{"guid":"d4f88c04-93ec-56ce-ae97-973a04b96fbd","title":"Building Portable Service Images with Buck","subtitle":null,"slug":"ASG2019-143-building-portable-service-images-with-buck","link":"https://cfp.all-systems-go.io/ASG2019/talk/K7E7T7/","description":"Buck is an opensource build system.  At Facebook, we’ve taught it to build container images that work with systemd.\n\nAt Facebook we use an open-source build system called Buck.  Buck is a build system designed to provide more strong guarantees of incremental builds, reproducibility, and dependency management.  Open-source Buck can now be used to construct fully described and fully self-contained container images that work with systemd! I will show how we use this tool internally at Facebook and how it can be used externally (It’s open-source!) to build service containers for use by systemd.  I will dive into the the details of how these builds are performed with systemd-nspawn, how we use the Buck system to define the systemd services and their dependencies, and how these images work at runtime.","original_language":"eng","persons":["Lindsay Salisbury"],"tags":["asg2019","143","2019"],"view_count":100,"promoted":false,"date":"2019-09-21T00:00:00.000+02:00","release_date":"2019-09-21T02:00:00.000+02:00","updated_at":"2025-01-25T11:30:07.547+01:00","length":1539,"duration":1539,"thumb_url":"https://static.media.ccc.de/media/events/all_systems_go/2019/143-hd.jpg","poster_url":"https://static.media.ccc.de/media/events/all_systems_go/2019/143-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/all_systems_go/2019/143-hd.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/all_systems_go/2019/143-hd.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/ASG2019-143-building-portable-service-images-with-buck","url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_title":"All Systems Go! 2019","conference_url":"https://api.media.ccc.de/public/conferences/asg2019","related":[{"event_id":7864,"event_guid":"3d439f1d-e67a-5e92-96b6-3a9c5ad30965","weight":1},{"event_id":7865,"event_guid":"9dbd53a6-97d6-55b6-8ef0-e339aae4ff20","weight":1},{"event_id":7870,"event_guid":"878e4754-c346-5b93-96d2-1ca8bf5109c3","weight":7},{"event_id":7871,"event_guid":"4fb36c1f-144d-54a4-b4de-873384e98c40","weight":3},{"event_id":7873,"event_guid":"bc369d82-ced8-535d-a824-32b2efdf9528","weight":1},{"event_id":7876,"event_guid":"2d010334-8e60-5428-b831-b0bf7b3ba6af","weight":1},{"event_id":7877,"event_guid":"0ca00408-9684-58d3-a7c3-7d7b6cae6b75","weight":3},{"event_id":7878,"event_guid":"dcabb3af-fcac-5e83-a77d-5aa655cd95b3","weight":1},{"event_id":7882,"event_guid":"a738a107-7051-544d-98cf-b6c3adce4a3f","weight":7},{"event_id":7883,"event_guid":"40aa2960-6288-5a2f-bf6f-268746f0ecdf","weight":9},{"event_id":7886,"event_guid":"df4ceb70-2c63-538c-b581-e60adc89f261","weight":4},{"event_id":7887,"event_guid":"06a90eaf-78a4-52d6-b29d-ce47622c4955","weight":1},{"event_id":7888,"event_guid":"dad4ba00-7141-5e7d-af7d-02f492f4b5e5","weight":4},{"event_id":7891,"event_guid":"355ea6a0-d58b-5a47-a613-312ede6b1859","weight":1},{"event_id":7893,"event_guid":"7bc76c4b-311d-55e4-b60e-1c837b15ed7b","weight":1},{"event_id":7894,"event_guid":"b9883475-56ad-5749-9c65-e178a1e6bbfb","weight":9},{"event_id":7910,"event_guid":"b0b3fa50-d9db-511a-9fb1-9edb96bd3401","weight":7},{"event_id":7914,"event_guid":"53354cbe-c92f-5c48-82e3-194690b28f0c","weight":4},{"event_id":7918,"event_guid":"147efef1-ba80-5748-9655-fb5cd41f61f9","weight":1},{"event_id":7922,"event_guid":"090131ec-ac5c-5b60-85a0-6d080ea4054c","weight":4},{"event_id":7923,"event_guid":"19b2b529-d037-53ac-8e5e-81028aea4827","weight":1},{"event_id":7930,"event_guid":"71c8ae1e-b22d-4576-9ec8-cc0920ac61a4","weight":1},{"event_id":7934,"event_guid":"6238c286-33b4-4388-9637-9c4024f0d9e8","weight":1},{"event_id":7936,"event_guid":"fc47f807-2b7a-4409-b980-3e12322fe6d5","weight":1}],"recordings":[{"size":94,"length":1539,"mime_type":"video/mp4","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2019-09-21T15:56:25.853+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/h264-hd/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_hd.mp4","url":"https://api.media.ccc.de/public/recordings/40332","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"},{"size":68,"length":1539,"mime_type":"video/webm","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2019-09-21T17:19:10.886+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/webm-sd/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/40473","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"},{"size":23,"length":1539,"mime_type":"audio/mpeg","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2019-09-21T17:19:51.009+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/mp3/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/40475","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"},{"size":20,"length":1539,"mime_type":"audio/opus","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2019-09-21T17:20:07.833+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/opus/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_opus.opus","url":"https://api.media.ccc.de/public/recordings/40476","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"},{"size":156,"length":1539,"mime_type":"video/webm","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2019-09-21T17:21:41.410+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/webm-hd/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/40480","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"},{"size":43,"length":1539,"mime_type":"video/mp4","language":"eng","filename":"asg2019-143-eng-Building_Portable_Service_Images_with_Buck_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2019-09-21T17:21:56.662+02:00","recording_url":"https://cdn.media.ccc.de/events/all_systems_go/2019/h264-sd/asg2019-143-eng-Building_Portable_Service_Images_with_Buck_sd.mp4","url":"https://api.media.ccc.de/public/recordings/40481","event_url":"https://api.media.ccc.de/public/events/d4f88c04-93ec-56ce-ae97-973a04b96fbd","conference_url":"https://api.media.ccc.de/public/conferences/asg2019"}]}