Skip to content

cloudfoundry-community/docker-services-boshworkspace

Repository files navigation

docker-services-boshworkspace

Build Status

The fastest way to deploy Docker Services in combination with Cloud Foundry onto bosh-lite.

Preparation

To get started you will need a running bosh-lite. Get yours by following the instructions here

Next step is setting up this repository

git clone https://github.com/cloudfoundry-community/docker-services-boshworkspace.git
cd docker-services-boshworkspace
bundle install

Deploy Cloud Foundry

With all prerequisites in place let deploy Cloud Foundry.

bosh deployment cf-warden
bosh prepare deployment
bosh deploy

Deploy Docker Services

bosh deployment docker-warden
bosh prepare deployment
bosh deploy
cf create-service-broker docker containers containers http://cf-containers-broker.10.244.0.34.xip.io
# List services
cf service-access
cf enable-service-access <service_name>

Deploy on AWS VPC

Assuming you used terraform-aws-cf-install, ssh onto the Bastion server and run:

cd ~/workspace/deployments
git clone https://github.com/cloudfoundry-community/docker-services-boshworkspace.git
cd docker-services-boshworkspace

There is a helper script in shell/populate-docker-aws-vpc which will extract information from the cf-boshworkspace deployment on the bastion server and populate the variables in deployments/docker-aws-vpc.yml, a copy of the original file will be left in deployments/docker-aws-vpc.yml.orig. Run the following on the bastion server:

cd ~/workspace/deployments/docker-services-boshworkspace/shell
./populate-docker-aws-vpc

You will still need to modify the SUBNET_ID in deployments/docker-aws-vpc.yml. In AWS Console navigate to VPC > Subnets and select a subnet named "docker", the subnet id will be in the format "subnet-xxxxxxxx" and replace the value SUBNET_ID in the file

Your deployment manifest is now populated, launch the deployment from the bastion server:

cd ~/workspace/deployments/docker-services-boshworkspace
bosh deployment docker-aws-vpc
bosh prepare deployment
bosh -n deploy

By default, it assumes you are deploying into a 10.10.5.0/24 subnet. This is an optimization for users of terraform-aws-cf-install which creates this subnet for us.

Swarm & Offline images

There are alternative deployment files for using docker with swarm. If you want to install the docker service broker without internet access be sure to checkout the offline deployments. Which use the docker-broker-images-boshrelease for installing the docker images.

Alternate Network Configurations

If you want to deploy into another subnet CIDR, then add a meta.subnets to your deployment file to look something like:

meta:
  subnets:
  - range: 10.10.5.0/24
  name: default_unused
  reserved:
    - 10.10.5.2 - 10.10.5.9
    static:
      - 10.10.5.10 - 10.10.5.250
      gateway: 10.10.5.1
      dns:
        - 10.10.0.2
        cloud_properties:
          security_groups: (( meta.security_groups ))
          subnet: (( meta.subnet_ids.docker ))

About

The fastest way to deploy Docker Services in combination with Cloud Foundry

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published