[lxc-users] Recommended techniques for dynamically provisioning containers using lxd

P. Lowe plowe at zitovault.com
Wed Aug 17 20:48:10 UTC 2016


  Hi,

I am investigating the use of lxd to dynamically spin up server instances.

I'm thinking about using a code-as-infrastructure approach using a  
chef-solo cookbook that is pulled out of git upon the container's  
initial boot and does all the provisioning upon initial boot.

Would people recommend creating a new container from a base image,  
modifying rc.local to pull the cookbook from git and launch it upon  
initial bootup, after which rc.local is reset to be empty and the  
server is restarted?

After rc.local is modified, the new container would be published to  
the local image store, so that whenever a new container is launched,  
it will boot up, run rc.local, pull the cookbook from git, run the  
cookbook and apply all the local provisioning operations, empty out  
rc.local, and then reboot the machine, after which it will boot with  
the customized provisioning parameters for normal operation.

What is the recommended way to send provisioning parameters (e.g. ip  
address, gateway, hostname, block device mounts, secrets (certs /  
keys)) to the container? Would people just drop a config file into the  
container using the lxc push command, or any other better techniques?

Thanks,

P.Lowe




More information about the lxc-users mailing list