You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Dockerfile converted to a Singularity def should respect the ENV directives.
Actual Behavior
Steps to Reproduce
I have a Dockerfile that uses an ENV directive.
FROM ubuntu:20.04 as base
ENV DEBIAN_FRONTEND="noninteractive"RUN apt-get update && \
apt-get install -y tzdata
> docker build -f Dockerfile .#5 14.16 Setting up tzdata (2024a-0ubuntu0.20.04.1) ...#5 14.19 #5 14.19 Current default time zone: 'Etc/UTC'#5 14.19 Local time is now: Wed Aug 21 01:48:43 UTC 2024.#5 14.19 Universal Time is now: Wed Aug 21 01:48:43 UTC 2024.
When I convert that to a singularity def, it looks like this.
Separate issue but I find that I need to manually update Bootstrap to get it working.
sed -i'''s!Bootstrap: docker!Bootstrap: library!' Singularity.def
Anyway when I build that def, DEBIAN_FRONTEND is not seen by apt-get because it's not exported.
Setting up tzdata (2024a-0ubuntu0.20.04.1) ...
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 76.)
debconf: falling back to frontend: Readline
Configuring tzdata
------------------
Please select the geographic area in which you live. Subsequent configuration
questions will narrow this down by presenting a list of cities, representing
the time zones in which they are located.
1. Africa 4. Australia 7. Atlantic 10. Pacific 13. Etc
2. America 5. Arctic 8. Europe 11. SystemV
3. Antarctica 6. Asia 9. Indian 12. US
Geographic area:
If you want the envar to appear in the run command, you could put it there. Do you have a suggestion for how to disambiguate between build and runtime envars? The above is the default because there is no distinction.
Expected Behavior
A Dockerfile converted to a Singularity def should respect the ENV directives.
Actual Behavior
Steps to Reproduce
I have a Dockerfile that uses an ENV directive.
When I convert that to a singularity def, it looks like this.
Separate issue but I find that I need to manually update Bootstrap to get it working.
Anyway when I build that def,
DEBIAN_FRONTEND
is not seen by apt-get because it's not exported.export DEBIAN_FRONTEND="noninteractive"
fixes this.Why doesn't the conversion tool
export
ENV directives in the singularity def?Context
[provide more detailed introduction to the issue itself . This is for make a reproducible issue.]
Failure Logs
N/A
Possible Fix
export variables defined as
ENV
The text was updated successfully, but these errors were encountered: