Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Docker Compose to CoreOS

I'm currently learning Docker, and have made a nice and simple Docker Compose setup. 3 containers, all with their own Dockerfile setup. How could I go about converting this to work on CoreOS so I can setup up a cluster later on?

web:   build: ./app   ports:     - "3030:3000"   links:     - "redis"  newrelic:   build: ./newrelic   links:     - "redis"  redis:   build: ./redis   ports:     - "6379:6379"   volumes:     - /data/redis:/data 
like image 968
Dustin Avatar asked Mar 16 '15 21:03

Dustin


2 Answers

taken from https://docs.docker.com/compose/install/

the only thing is that /usr is read only, but /opt/bin is writable and in the path, so:

sd-xx~ # mkdir /opt/ sd-xx~ # mkdir /opt/bin sd-xx~ # curl -L https://github.com/docker/compose/releases/download/1.3.3/docker-compose-`uname -s`-`uname -m` > /opt/bin/docker-compose   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                  Dload  Upload   Total   Spent    Left  Speed 100   403    0   403    0     0   1076      0 --:--:-- --:--:-- --:--:--  1080 100 7990k  100 7990k    0     0  2137k      0  0:00:03  0:00:03 --:--:-- 3176k sd-xx~ # chmod +x /opt/bin/docker-compose  sd-xx~ # docker-compose Define and run multi-container applications with Docker.  Usage:   docker-compose [options] [COMMAND] [ARGS...]   docker-compose -h|--help  Options:   -f, --file FILE           Specify an alternate compose file (default: docker-compose.yml)   -p, --project-name NAME   Specify an alternate project name (default: directory name)   --verbose                 Show more output   -v, --version             Print version and exit  Commands:   build              Build or rebuild services   help               Get help on a command   kill               Kill containers   logs               View output from containers   port               Print the public port for a port binding   ps                 List containers   pull               Pulls service images   restart            Restart services   rm                 Remove stopped containers   run                Run a one-off command   scale              Set number of containers for a service   start              Start services   stop               Stop services   up                 Create and start containers   migrate-to-labels  Recreate containers to add labels 
like image 163
Francis Avatar answered Oct 01 '22 00:10

Francis


I've created simple script for installing latest Docker Compose on CoreOS: https://gist.github.com/marszall87/ee7c5ea6f6da9f8968dd

#!/bin/bash mkdir -p /opt/bin curl -L `curl -s https://api.github.com/repos/docker/compose/releases/latest | jq -r '.assets[].browser_download_url | select(contains("Linux") and contains("x86_64"))'` > /opt/bin/docker-compose chmod +x /opt/bin/docker-compose 

Just run it with sudo

like image 36
marszall87 Avatar answered Sep 30 '22 23:09

marszall87