Since I fail to explain how this works I suggest that you post an example
Dockerfile here and I'll translate it to a similar Packer template.

On Thu, Feb 14, 2019 at 2:57 PM Daniel Ortega <danielortegauf...@gmail.com>
wrote:

> Hi all,
>
> I think there is som confusion of what RUN in a Dockerfile does
>>
>
> I don't agree, my problem it's about something that is called "docker
> builder" in Packer cannot be used to build anything (as I cannot execute
> any "RUN" command). Maybe it's a semantic question.
>
> So to produce a image that runs systemd do:
>>
>> a) shell provisioner to install systemd and services
>> b) change the ENTRYPOINT/CMD in changes to run systemd.
>>
>
> It's clear to me that using some provisioners you can do a workaround for
> other cases, but I think that is *not for systemd*. AFAIK, *systemd*
> should be the first daemon to start and the last daemon to stop.
>
> Thanks everyone for your suggestions! :)
>
> El martes, 12 de febrero de 2019, 20:49:00 (UTC+1), Rickard von Essen
> escribió:
>>
>> I think there is som confusion of what RUN in a Dockerfile does. It
>> executes the command during the build of the image. That would be handled
>> by a shell provisioner in Packer.
>>
>> What process gets started when you *run* the container from the
>> resulting image is handled by ENTRYPOINT and CMD those can be set in packer
>> with the changes 1).
>>
>> So to produce a image that runs systemd do:
>>
>> a) shell provisioner to install systemd and services
>> b) change the ENTRYPOINT/CMD in changes to run systemd.
>>
>> 1) https://packer.io/docs/builders/docker.html#changes
>>
>> // Rickard
>>
>> PS. Multiprocess containers can (and should) really be questioned.
>>
>> On Tue, Feb 12, 2019 at 6:14 PM Vincent Rubiolo <vincent...@datameer.com>
>> wrote:
>>
>>> Hi Daniel,
>>> On 2/12/19 2:29 AM, Daniel Ortega wrote:
>>>
>>> We want to use our Java docker image (tagged as 
>>> *idealista/8u181-stretch-openjdk-headless
>>> <https://hub.docker.com/r/idealista/jdk/tags>* in Docker Hub) which is
>>> based in Debian Stretch Slim.
>>>
>>> This image *doesn't have systemd* (neither official image, nor our
>>> derived image one), so this package should be installed to be used later to
>>> configure our services. AFAIK, if you want to use systemd to manage
>>> services, this process should be the first -> should be present in Docker
>>> run command. But the problem is, before installation /lib/system/systemd is
>>> not present, so the container cannot start. This could be solved using RUN
>>> when you are using Dockerfiles, because that commands are executed in the
>>> image "build phase". You can install systemd before and execute
>>> /lib/system/systemd at container startup.
>>>
>>> As Rickard said, you can use a shell provisioner to run any command you
>>> want (in this case the one to start systemd) once your container is up with
>>> Packer. Another solution is to override the RUN command (as per
>>> https://www.packer.io/docs/builders/docker.html#run_command) to specify
>>> what you want.
>>>
>>> So in short I'd advise:
>>>
>>>    1. Start your container with Packer using the default settings.
>>>    2. Install the packages you want (either via a shell or Ansible
>>>    provisioner), like systemd.
>>>    3. In your shell provisioner, manually start systemd, then use it to
>>>    configure the services
>>>
>>> AFAIK, systemd must be running when you use commands like 'service' but
>>> it does not need to be started when the container starts (there are ways to
>>> do that if needed).
>>>
>>> On a related note, I had a similar issue with the container not
>>> starting, because the default Packer 'docker run' command relies on
>>> /bin/bash +  not having an entrypoint set (cf
>>> https://github.com/hashicorp/packer/issues/6920). The changes was made
>>> but later reverted because of backward compatibility issues. You might find
>>> the issue useful in your case tool.
>>>
>>> Let us know how it goes,
>>>
>>> Vincent
>>>
>>> --
>>> This mailing list is governed under the HashiCorp Community Guidelines -
>>> https://www.hashicorp.com/community-guidelines.html. Behavior in
>>> violation of those guidelines may result in your removal from this mailing
>>> list.
>>>
>>> GitHub Issues: https://github.com/mitchellh/packer/issues
>>> IRC: #packer-tool on Freenode
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "Packer" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to packer-tool...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/packer-tool/72c11e2b-38c1-2890-8ba0-ae3da7012f40%40datameer.com
>>> <https://groups.google.com/d/msgid/packer-tool/72c11e2b-38c1-2890-8ba0-ae3da7012f40%40datameer.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
> This mailing list is governed under the HashiCorp Community Guidelines -
> https://www.hashicorp.com/community-guidelines.html. Behavior in
> violation of those guidelines may result in your removal from this mailing
> list.
>
> GitHub Issues: https://github.com/mitchellh/packer/issues
> IRC: #packer-tool on Freenode
> ---
> You received this message because you are subscribed to the Google Groups
> "Packer" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to packer-tool+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/packer-tool/0995fd92-484f-4b8d-9685-3dff1e4aae3d%40googlegroups.com
> <https://groups.google.com/d/msgid/packer-tool/0995fd92-484f-4b8d-9685-3dff1e4aae3d%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
This mailing list is governed under the HashiCorp Community Guidelines - 
https://www.hashicorp.com/community-guidelines.html. Behavior in violation of 
those guidelines may result in your removal from this mailing list.

GitHub Issues: https://github.com/mitchellh/packer/issues
IRC: #packer-tool on Freenode
--- 
You received this message because you are subscribed to the Google Groups 
"Packer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to packer-tool+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/packer-tool/CALz9Rt_NvJEt%3DQFkejfx7NqcdAbMMLxiKK3d4JZ0Z%2Bu0y-di7Q%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to