From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id kLK/IG9EtF+8eAAA0tVLHw (envelope-from ) for ; Tue, 17 Nov 2020 21:45:19 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id qBuxHG9EtF8hBgAA1q6Kng (envelope-from ) for ; Tue, 17 Nov 2020 21:45:19 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 0FBF194042B for ; Tue, 17 Nov 2020 21:45:19 +0000 (UTC) Received: from localhost ([::1]:50228 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kf8mr-0005x4-TK for larch@yhetil.org; Tue, 17 Nov 2020 16:45:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39948) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kf8mQ-0005wt-B5 for guix-devel@gnu.org; Tue, 17 Nov 2020 16:44:50 -0500 Received: from 01d.relay.hey.com ([204.62.114.227]:39197) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kf8mN-0007Tw-PE for guix-devel@gnu.org; Tue, 17 Nov 2020 16:44:50 -0500 Received: from hey.com (bigip-vip-new.rw-ash-int.37signals.com [10.20.0.24]) by 01.relay.hey.com (Postfix) with ESMTP id 0A7341005C9; Tue, 17 Nov 2020 21:44:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hey.com; s=heymail; t=1605649486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to; bh=AIwJGZ4b8LgnClWCXC6wWFdxcL/dWv4oUr3TbHpQfTk=; b=uonYKlSPSxDyQpXhiI0e0BaKdhGHaiZvsKYBmyHHhB2DzUlLXWy0KOdXHwtjAettmbJQPp ERh+kObNdiOfIRsY0f40mYA3pMFXT3lbztzWsBMc0eiyYD1EeHwb92bxzvt4TLeZ9S6h7c hvbOZejt2jZhVjG7nvmtRMPOK5T2QhpVhPgZ7XIZNxXZwQRVwoN8Ek88z0yG5tqNCFyEox xRhJC+VQAHSZECRqeH2a3QFzkTuro66q+raD5x6oTt4IzUf7Wcr4MQYamIM0CsPRhSiWQ5 XxVjgFqVGA/6FQL5oRz1ifPJxu3ecHaJMnZCjsv788/WM7xOFuLnmoPUFfh2Ug== Date: Tue, 17 Nov 2020 21:44:45 +0000 From: Ryan Prior To: zimoun , Danny Milosavljevic Cc: Development of GNU Guix and the GNU System distribution Message-ID: <09fd0aeebbe653458979d4ea72330f446f1dfb84@hey.com> In-Reply-To: <20201117202804.6cba8674@scratchpost.org> Subject: Re: Release: Docker Image? DockerHub? skopeo? Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="--==_mimepart_5fb4444dd7822_415b2dc89536"; charset=UTF-8 Content-Transfer-Encoding: 7bit Received-SPF: pass client-ip=204.62.114.227; envelope-from=ryanprior@hey.com; helo=01d.relay.hey.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/11/17 16:44:46 X-ACL-Warn: Detected OS = ??? X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=hey.com header.s=heymail header.b=uonYKlSP; dmarc=pass (policy=quarantine) header.from=hey.com; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -0.21 X-TUID: kFruPzWC82SB ----==_mimepart_5fb4444dd7822_415b2dc89536 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On November 17, 2020, Danny Milosavljevic wrote: > Hmm, maybe I'm misunderstanding what Docker compose does entirely. What docker-compose does is it creates a set of Docker containers for you based on a configuration file. In that file you define services, filesystem volumes and their mount points, virtual private networks, environment variables, and so on. This saves you the trouble of running a bunch of "docker run ..." commands to set up a cluster of containers. But docker-compose doesn't do anything you couldn't already do with Docker alone; it uses the Docker API to give you a more convenient interface. > Reading the docs it seems to just manage multiple isolated Docker > images and > deploy new ones? That's exactly what it does. > What then is used to do the equivalent of a guix profile with multiple > packages > in a Docker image? Something a lot of Dockers users initially think you can do, but you actually can't, is to merge two Docker images together. There's a "ruby" image and there's a "python" image but you can't just say hey Docker I want a "ruby+python" image. So there is no direct equivalent to a Guix profile with multiple packages. What you can do is start from one image, add what's needed from the other to create a new base image, and then go from there. But you have to manage that manually by running "apt" commands for Debian or "apk" for Alpine or whatever, as part of your Dockerfile build process. ----==_mimepart_5fb4444dd7822_415b2dc89536 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On November 17, 2020, Danny Milosavljevic <dannym@scratchpost.o= rg> wrote:
Hmm, maybe I'm misunderstanding what Docke= r compose does entirely.

What docker-compose does is= it creates a set of Docker containers for you based on a configuration f= ile. In that file you define services, filesystem volumes and their mount= points, virtual private networks, environment variables, and so on. This= saves you the trouble of running a bunch of "docker run ..." c= ommands to set up a cluster of containers. But docker-compose doesn't do = anything you couldn't already do with Docker alone; it uses the Docker AP= I to give you a more convenient interface.

Readi= ng the docs it seems to just manage multiple isolated Docker images anddeploy new ones?

That's exactly what it does.
<= br>
What then is used to do the equivalent of a guix pro= file with multiple packages
in a Docker image?

So= mething a lot of Dockers users initially think you can do, but you actual= ly can't, is to merge two Docker images together. There's a "ruby&qu= ot; image and there's a "python" image but you can't just say h= ey Docker I want a "ruby+python" image. So there is no direct e= quivalent to a Guix profile with multiple packages.

What you can d= o is start from one image, add what's needed from the other to create a n= ew base image, and then go from there. But you have to manage that manual= ly by running "apt" commands for Debian or "apk" for = Alpine or whatever, as part of your Dockerfile build process.
----==_mimepart_5fb4444dd7822_415b2dc89536--