README
¶
Garden Linux
A Linux backend for Garden.
You can deploy Garden-Linux using the Garden-Linux BOSH Release. This is the only "supported" way to use Garden-Linux. If you're not using BOSH, and still want to have a play, follow the insructions below.
Installing Garden-Linux
Note: the rest of these instructions assume you arranged for the garden-linux code and dependencies to be
present in your $GOPATH
on a machine running Ubuntu 14.04 or later.
The easiest way to achieve this is actually to check out the Garden-Linux BOSH Release, since that's the only place that all the dependency version data is recorded.
The steps are:
git clone --recursive git@github.com:cloudfoundry-incubator/garden-linux-release
cd garden-linux-release
export GOPATH=$PWD
Install and load aufs
sudo apt-get install linux-image-extra-$(uname -r)
sudo modprobe aufs
Build garden-linux
cd $GOPATH/src/github.com/cloudfoundry-incubator/garden-linux # assuming your $GOPATH has only one entry
make
Set up necessary directories
sudo mkdir -p /opt/garden/depot /opt/garden/graph /opt/garden/state
Download a RootFS (Optional)
If you plan to run docker images instead of using rootfs from disk, you can skip this step.
e.g. if you want to use the default Cloud Foundry rootfs:
wget https://github.com/cloudfoundry/stacks/releases/download/1.19.0/cflinuxfs2-1.19.0.tar.gz
sudo mkdir /opt/garden/rootfs
sudo tar -xzpf cflinuxfs2-1.19.0.tar.gz -C /opt/garden/rootfs
Run garden-linux
Note that if you opted not to download a rootfs in the previous step, you can remove the -rootfs=/opt/garden/rootfs
parameter from the command.
cd $GOPATH/src/github.com/cloudfoundry-incubator/garden-linux # assuming your $GOPATH has only one entry
sudo ./out/garden-linux \
-depot=/opt/garden/depot \
-graph=/opt/garden/graph \
-stateDir=/opt/garden/state \
-rootfs=/opt/garden/rootfs \
-bin=$PWD/linux_backend/bin \
-listenNetwork=tcp \
-listenAddr=127.0.0.1:7777
Kick the tyres
The easiest way to start creating containers is using the unofficial gaol
command line client.
For more advanced use cases, you'll want to use the Garden client package.
Development
See the Developer's Guide to get started.
Many integration tests are in another repository, Garden Integration Tests.
Documentation
¶
There is no documentation for this package.
Directories
¶
Path | Synopsis |
---|---|
fake_cmdpreparer
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_commander
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_connection_handler
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_connector
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_listener
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_poller
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_ptyopener
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_rlimits_env_encoder
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_runner
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_signaller
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_spawner
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_term
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_user
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_capabilities
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_container_execer
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_initializer
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_rlimits_initializer
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_rootfs_enterer
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_signaller
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_waiter
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
system
system contains low-level functions and classes for interacting with the base OS
|
system contains low-level functions and classes for interacting with the base OS |
system/fake_step_runner
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
system/fake_user
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
integration
|
|
fakes
This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter
|
This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter |
cgroups_manager/fake_cgroup_reader
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_iptables_manager
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_network_statisticser
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_quota_manager
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_watcher
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
iptables_manager/fake_chain
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fakes
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
bridgemgr/fake_bridge_manager
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fakes
This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter
|
This file was generated by counterfeiter This file was generated by counterfeiter This file was generated by counterfeiter |
iptables/fakes
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
subnets
The subnets package provides a subnet pool from which networks may be dynamically acquired or statically reserved.
|
The subnets package provides a subnet pool from which networks may be dynamically acquired or statically reserved. |
subnets/fakes
This file was generated by counterfeiter This file was generated by counterfeiter
|
This file was generated by counterfeiter This file was generated by counterfeiter |
packer
|
|
pkg
|
|
fake_msg_sender
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_process_tracker
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_signaller
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_filter_provider
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_mkdir_chowner
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_remover
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_rootfs_cleaner
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_rootfs_provider
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_subnet_pool
This file was generated by counterfeiter
|
This file was generated by counterfeiter |
fake_sysinfo
This file was generated by counterfeiter
|
This file was generated by counterfeiter |