mirror of
https://github.com/containers/podman.git
synced 2025-12-07 22:32:46 +08:00
rootless, create: support --pod
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com> Closes: #1372 Approved by: mheon
This commit is contained in:
committed by
Atomic Bot
parent
8ca67d2794
commit
1ac1c54027
@@ -99,6 +99,10 @@ func createCmd(c *cli.Context) error {
|
||||
storageOpts.UIDMap = mappings.UIDMap
|
||||
storageOpts.GIDMap = mappings.GIDMap
|
||||
|
||||
if os.Getuid() != 0 {
|
||||
rootless.SetSkipStorageSetup(true)
|
||||
}
|
||||
|
||||
runtime, err := libpodruntime.GetRuntimeWithStorageOpts(c, &storageOpts)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "error creating libpod runtime")
|
||||
@@ -110,7 +114,7 @@ func createCmd(c *cli.Context) error {
|
||||
|
||||
imageName := ""
|
||||
var data *inspect.ImageData = nil
|
||||
if rootfs == "" {
|
||||
if rootfs == "" && !rootless.SkipStorageSetup() {
|
||||
newImage, err := runtime.ImageRuntime().New(ctx, c.Args()[0], rtc.SignaturePolicyPath, "", os.Stderr, nil, image.SigningOptions{}, false, false)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -133,6 +137,14 @@ func createCmd(c *cli.Context) error {
|
||||
return err
|
||||
}
|
||||
|
||||
became, ret, err := joinOrCreateRootlessUserNamespace(createConfig, runtime)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if became {
|
||||
os.Exit(ret)
|
||||
}
|
||||
|
||||
ctr, err := runtime.NewContainer(ctx, runtimeSpec, options...)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user