diff options
-rw-r--r-- | docs/podman-run.1.md | 8 | ||||
-rw-r--r-- | libpod/container_internal.go | 5 |
2 files changed, 11 insertions, 2 deletions
diff --git a/docs/podman-run.1.md b/docs/podman-run.1.md index edd7ed681..c1183e910 100644 --- a/docs/podman-run.1.md +++ b/docs/podman-run.1.md @@ -21,6 +21,14 @@ If the IMAGE is not already loaded then **podman run** will pull the IMAGE, and all image dependencies, from the repository in the same way running **podman pull** IMAGE, before it starts the container from that image. +Several files will be automatically created within the container when it is run. +These include `/etc/hosts`, `/etc/hostname`, and `/etc/resolv.conf` to manage +networking. These will be based on the host's version of the files, though they +can be customized with options (for example, **--dns** will override the host's +DNS servers in the created `resolv.conf`). Additionally, an empty file is +created in each container to indicate to programs they are running in a +container. This file is located at `/run/.containerenv`. + ## OPTIONS **--add-host**=[] Add a custom host-to-IP mapping (host:ip) diff --git a/libpod/container_internal.go b/libpod/container_internal.go index d70e5c13b..0b04cc81a 100644 --- a/libpod/container_internal.go +++ b/libpod/container_internal.go @@ -673,13 +673,14 @@ func (c *Container) makeBindMounts() error { } // Make .containerenv - if _, ok := c.state.BindMounts["/.containerenv"]; !ok { + // Empty file, so no need to recreate if it exists + if _, ok := c.state.BindMounts["/run/.containerenv"]; !ok { // Empty string for now, but we may consider populating this later containerenvPath, err := c.writeStringToRundir(".containerenv", "") if err != nil { return errors.Wrapf(err, "error creating containerenv file for container %s", c.ID()) } - c.state.BindMounts["/.containerenv"] = containerenvPath + c.state.BindMounts["/run/.containerenv"] = containerenvPath } return nil |