- Fig - Fast, isolated development environments using Docker
- Packer - Tool for creating identical machine images
- decking - Create, manage and run clusters of Docker containers
- Ansible
- Kubernetes - Container Cluster Manager
| def main(): | |
| while True: | |
| try: | |
| pokemon = int(input("How many Pokemon do you have? ")) | |
| if pokemon >= 0: | |
| break | |
| raise ValueError | |
| except ValueError: | |
| print("Invalid number") |
| #!/bin/bash | |
| # Assumes a pre-built carina cluster, e.g.: | |
| # | |
| # carina create --wait shipyard \ | |
| # && carina credentials shipyard \ | |
| # && eval `carina env shipyard` | |
| # |
| #!/bin/bash | |
| if [ "$1" != "" ] && [ "$1" = "-h" ]; then | |
| echo "Shipyard Deploy uses the following environment variables:" | |
| echo " ACTION: this is the action to use (deploy, upgrade, remove)" | |
| echo " IMAGE: this overrides the default Shipyard image" | |
| echo " PREFIX: prefix for container names" | |
| echo " SHIPYARD_ARGS: these are passed to the Shipyard controller container as controller args" | |
| echo " TLS_CERT_PATH: path to certs to enable TLS for Shipyard" | |
| exit 1 |
Unionize lets you connect together docker containers in arbitrarily complex scenarios.
Note: I recommend to use https://github.com/jpetazzo/pipework instead.
Now if you want Unionize, it's still here. Just check those examples.
This gist is an implementation of http://sirile.github.io/2015/05/18/using-haproxy-and-consul-for-dynamic-service-discovery-on-docker.html on top of Docker Machine and Docker Swarm.
| registry: | |
| restart: always | |
| image: registry:2 | |
| ports: | |
| - 5000:5000 | |
| environment: | |
| REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /var/lib/registry | |
| volumes: | |
| - ./data:/var/lib/registry |
| # | |
| # build | |
| # | |
| # # docker build -t consul:latest . | |
| # | |
| # bootstrap server | |
| # | |
| # # docker run -d consul -server -bootstrap | |
| # # docker inspect (container_id) | |
| # |
| <enricher doc:name="Message Enricher" source="#[payload]" target="#[flowVars['itsm-event-data']]"> | |
| <remedy:get-single username="${remedy.read.username}" password="${remedy.read.password}" config-ref="RemedyConnection" id="#[message.outboundProperties['remedy_event_id']]" type="${remedy.outbound.table}" idBased="#[true]" doc:name="get-event-details"/> | |
| </enricher> | |
| <set-payload value="#[message.outboundProperties['remedy_form_id']]" doc:name="Set Payload"/> | |
| <choice doc:name="Choice"> | |
| <when expression="#[message.outboundProperties['remedy_form'] == '${helpdesk.form}']"> | |
| <remedy:query username="${remedy.read.username}" password="${remedy.read.password}" config-ref="RemedyConnection" query="('Incident Number' = "#[payload]")" type="${helpdesk.form}" idBased="#[true]" doc:name="query-helpdesk-form"/> | |
| <set-payload value="#[payload.get(0)]" doc:name="Get first entry"/> | |
| </when> | |
| <otherwise> |
| Sub SendRemedyIncidentEmail() | |
| Const adUseClient = 3 | |
| Const adOpenStatic = 3 | |
| Const adLockPessimistic = 2 | |
| ' Remedy User Name | |
| Const AR_SYSTEM_ODBC_DRIVER_UID = "" | |
| ' Password for Remedy User Name (AR_SYSTEM_ODBC_DRIVER_UID) | |
| Const AR_SYSTEM_ODBC_DRIVER_PWD = "" | |
| ' Port used by the Remedy server |