That was very close
/I am putting it here so that search might find it/

Thanks for the help it was just what I needed.

Here is what I got to work

 /usr/local/bin/startunprivlxc:
#!/bin/sh
cgm movepid all $1 $$
sudo -iH -u $2 -- lxc-start -n $3 -d

/etc/init/lxc-user.conf:
description "start unpriv containers"

start on started lxc

script
    USERS="user1 user2 user3"

    for u in $USERS; do
        cgm create all lxc$u
        cgm chown all lxc$u $(id -u $u) $(id -g $u)
        lxc-autostart -L -P /home/$u/.local/share/lxc | while read line;
 do
            set -- $line
            /usr/local/bin/startunprivlxc lxc$u $u $1
            sleep $2
        done
    done
end script



:
On 08/22/2014 01:24 AM, Serge Hallyn wrote:
Quoting Mike Bernson ([email protected]):
I have user on the server that wants to create container that have services
running in them. The users need to have the services runing at boot.

I want to keep user out of each other containers.
If a container is broken out of I would like to limit the damage to the user 
running the container

The users do not have access /var/lib/lxc. I want to keep
the users in there own area. I was hoping that the user
could create the contains under there home dir and use
the lxc-autostart of  unprivileged containers to start them.

This all works when the user is logged in. I was just looking to
start the containers at boot.

If there is not a easy way to handle this can you give me info
on what needs to happen with cgroups ?
  I can then write a small set uid c program to setup the cgroups and then run 
lxc-autostart.

I would also be willing to contribute the back to the lxc project if they find 
it usefull.
Ok, so (this is all untested, so you may have to tweak0 create a script
/usr/bin/startunprivlxc which does

#!/bin/sh
cgm movepid all $1
sudo -u $2 -- lxc-start -P $2 -n $3 -d

then create yourself a new upstart job which does

description "start unpriv containers"

start on started lxc

script
        USERS="user1 user2 user3"

        for u in $USERS; do
                cgm create all lxc$u
                cgm chown all lxc$u $(id -u $u) $(id -g $u)
                lxc-autostart -L -P /home/$u/.local/share/lxc | while read 
line; do
                        set -- $line
                        /usr/bin/startunprivlxc lxc$u $u $1
                        sleep $2
                done
        done
end script
_______________________________________________
lxc-users mailing list
[email protected]
http://lists.linuxcontainers.org/listinfo/lxc-users

_______________________________________________
lxc-users mailing list
[email protected]
http://lists.linuxcontainers.org/listinfo/lxc-users

Reply via email to