From charlesreid1

No edit summary
 
(35 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Overview=
==What is Docker==
Docker is a way of deploying apps on servers. It packages apps into side-by-side containers. These are similar in spirit to virtual machines, but different because containers are not (or, don't have to be) fully bundled operating systems. The container system makes sure everything runs the same everywhere.  
Docker is a way of deploying apps on servers. It packages apps into side-by-side containers. These are similar in spirit to virtual machines, but different because containers are not (or, don't have to be) fully bundled operating systems. The container system makes sure everything runs the same everywhere.  


It's like [[Homebrew]] or [[Aptitude]] for apps.
It's like [[Homebrew]] or [[Aptitude]] for apps.


=Installing=
[[Docker/Troubleshooting]]
 
Docker has great documentation on getting up and running: https://docs.docker.com/
 
Docker also provides several examples of docker-izing an app: https://docs.docker.com/engine/examples/
 
==Linux==
 
You can get docker running on many virtual hosting services.
 
Linode supports docker: https://blog.linode.com/2014/01/03/docker-on-linode/
 
They offer installation guides for different distributions: https://docs.docker.com/engine/installation/linux/#install-using-the-repository
 
===Ubuntu===
 
Guide to installing Docker on Ubuntu Linux: https://docs.docker.com/engine/installation/linux/ubuntulinux/
 
Start by setting up Docker's repositories:
 
<pre>
$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
</pre>
 
Add Docker's GPG key:
 
<pre>
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
</pre>
 
Verify fingerprint starts with 9DC8:


<pre>
[[Docker/Network Debugging]]
$ sudo apt-key fingerprint 0EBFCD88
</pre>


Set up the stable repository:
=References=


<pre>
Docker's documentation is excellent: https://docs.docker.com/
$ sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
</pre>


Install docker by updating package index and running install:
Docker from the command line: https://docs.docker.com/engine/reference/commandline/cli/


<pre>
Docker to run memcached (Digital Ocean guide): https://www.digitalocean.com/community/tutorials/docker-explained-how-to-create-docker-containers-running-memcached
$ sudo apt-get update
$ sudo apt-get install docker-ce
</pre>


Test it out:
Note that many Docker issues on Github contain a wealth of useful debugging strategies and commands for checking the state of networks, ports, etc. Example: https://github.com/docker/docker/issues/13914


<pre>
Potential security issues with Docker containers: https://blog.docker.com/2013/08/containers-docker-how-secure-are-they/
$ sudo docker run hello-world
</pre>


==Mac==
=Flags=


You can run docker on Mac: https://docs.docker.com/docker-for-mac/
{{DockerFlag}}

Latest revision as of 09:40, 28 February 2018

Docker is a way of deploying apps on servers. It packages apps into side-by-side containers. These are similar in spirit to virtual machines, but different because containers are not (or, don't have to be) fully bundled operating systems. The container system makes sure everything runs the same everywhere.

It's like Homebrew or Aptitude for apps.

Docker/Troubleshooting

Docker/Network Debugging

References

Docker's documentation is excellent: https://docs.docker.com/

Docker from the command line: https://docs.docker.com/engine/reference/commandline/cli/

Docker to run memcached (Digital Ocean guide): https://www.digitalocean.com/community/tutorials/docker-explained-how-to-create-docker-containers-running-memcached

Note that many Docker issues on Github contain a wealth of useful debugging strategies and commands for checking the state of networks, ports, etc. Example: https://github.com/docker/docker/issues/13914

Potential security issues with Docker containers: https://blog.docker.com/2013/08/containers-docker-how-secure-are-they/

Flags