Skip to content

Instantly share code, notes, and snippets.

@SalahAdDin
Last active January 16, 2018 16:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SalahAdDin/b85fa343d6f8f5b2ad6c359045ff298d to your computer and use it in GitHub Desktop.
Save SalahAdDin/b85fa343d6f8f5b2ad6c359045ff298d to your computer and use it in GitHub Desktop.
Supply EC2 instances for works with Docker

NOTE: For install all docker: curl -sSL https://get.docker.com | sh.

  1. Update the system and prepare requirements:
    $ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
    $ sudo apt-get update && sudo apt-get upgrade && sudo apt-get install apt-transport-https ca-certificates git  
    $ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
  1. Open next file and clean it:
    $ sudo nano /etc/apt/sources.list.d/docker.list
  2. Add proper source list, in this case Ubuntu 16.04 server, save and close:
    $ deb https://apt.dockerproject.org/repo ubuntu-xenial main
  3. Update, clean, review and install:
    $ sudo apt-get update && sudo apt-get install -y build-essential && sudo apt-get install -y nodejs && sudo apt-get purge lxc-docker && apt-cache policy docker-engine && sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual && sudo apt-get install docker-engine && sudo apt-get install cmake
  4. Enable Docker Service:
    $ sudo service docker start && sudo systemctl enable docker
  5. Create Docker Group:
    $ sudo usermod -aG docker $USER && sudo service docker restart
  6. Login in super user bash:
    $ sudo su
  7. Install Docker Machine:
   $ curl -L https://github.com/docker/machine/releases/download/v0.11.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine &&
  chmod +x /tmp/docker-machine &&
  sudo cp /tmp/docker-machine /usr/local/bin/docker-machine
  1. Install Docker Compose:
    $ curl -L https://github.com/docker/compose/releases/download/1.14.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    $ chmod +x /usr/local/bin/docker-compose
  1. Add bash completions:
    $ curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose  
    $ curl -L https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine.bash > /etc/bash_completion.d/docker-machine  
    $ curl -L https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-wrapper.bash > /etc/bash_completion.d/docker-machine-wrapper  
    $ curl -L https://raw.githubusercontent.com/docker/machine/master/contrib/completion/bash/docker-machine-prompt.bash > /etc/bash_completion.d/docker-machine-prompt  
  1. Create a docker machine, clone your repository, place inside it and compose your docker images.
    Optional: Update Docker Machine.
    a. $ docker-machine ssh {$docker-machine name}
    b. $ sudo apt-get update && sudo apt-get upgrade
@SalahAdDin
Copy link
Author

Creating a new machine with virtualbox:

docker-machine create dev 
docker-machine env dev
eval $(docker-machine env dev)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment