I will attempt to expand more on each of these as I learn the different phases of dockerization.
A quick-start guide to Docker can be found here: https://docs.docker.com/linux/step_one/
NOTE: CoreOS installations come with Docker pre-installed. You can skip that step if you already have Docker installed and scroll down to where they start running commands.
Read up on our Docker workflows here:
By default, Docker starts the daemon on a 172.17.X.X IP address. This can cause issues if 172.17.X.X is routable on the network from which you are trying to connect.
For example, the IllinoisNet WiFi uses a 172.X.X.X network, so the default IP address is routable on IllinoisNet. This results in traffic designated for the docker daemon to be sent over the network (since the network thinks it knows where you are trying to send it. 10.0.1.1/16 is unroutable on that network, so setting the docker daemon's IP to 10.0.1.1/16 allows our machine to properly send traffic to the docker daemon, instead of it being pushed out over the network where docker cannot see it.
To change Docker's default IP address, execute the following command, substituting for the CIDR notation of the new IP. It is imperative that you set this to a non-routable IP according to your source network's configuration.
sudo echo "[Service]
ExecStart=/usr/lib/coreos/dockerd daemon --host=fd:// --bip=NEW_CIDR" > /etc/systemd/system/docker.service
sudo systemctl stop docker
sudo systemctl daemon-reload
sudo ip link set docker0 down
sudo brctl delbr docker0
sudo systemctl start docker
ip addr should now list your newly specified ip instead of 172.17.x.x. A reboot may also be required in order for this change to take effect.
Bash completion is not available for CoreOS, making it difficult or impossible to install docker command completion, as described here: https://docs.docker.com/compose/completion/
Since the /usr/local/bin/ folder is read-only, and sudo -i did not seem to help, I was able to install docker-compose by using curl to place the executable in my home folder (or any writable folder). Then, simply add docker-compose to the PATH environment variable and give it permission to execute:
curl -L https://github.com/docker/compose/releases/download/1.5.2/docker-compose-`uname -s`-`uname -m` > /home/core/docker-compose
chmod +x /home/core/docker-compose/docker-compose