Learn Docker
Learn Docker
A Container is to VM today, what VM was to Physical Servers a while ago. The workload seems to shifting towards containers, and fast! In case you haven’t started ramping on it yet, you may find it a bit overwhelming to begin with.
I thought of sharing some byte sized information about Docker every day so that you can come onboard quickly. Stay tuned and subscribe to this blog so that you don’t miss the upcoming posts. Also, feel free to comment, share your experiences and questions. I will try my best to address them as appropriate.
docker
Learn Docker #2 – What is Docker?
Containers provide you an isolated view of the file system and you can play around with your view of the container. Other containers on the same server won’t get affected at all. This helps the developers a lot, since in today’s open source world, the developers tend to work with different versions of different libraries and frameworks.
This also makes your deployment a breeze, since all you need to do now is to ensure that your software works in your container properly. If it works locally, it simply continues to work on any other Linux box, and this is a big, Big, BIG relief! “Works on my box” syndrome, is no longer true with a container backing you 
docker
Learn Docker #3 – Set it up
You can install Docker on Mac, Windows, Ubuntu, CentOS, and other supported platforms by following the respective installation guides. As mentioned earlier, because the Docker daemon uses Linux-specific kernel features, you can’t run Docker natively in Windows or OS X. Instead, you must use docker-machine to create and attach to a virtual machine (VM). This machine is a Linux VM that hosts Docker for you on your Mac or Windows.
For a Docker installation on Linux, your physical machine is both the localhost and the Docker host. In networking, localhost means your computer. The Docker host is the computer on which the containers run.
docker
Learn Docker #4 – Playing around
Let’s play around with Docker a bit.
Display Docker Information
Docker information command is useful and you should use it while discussing your issues with someone or may be asking questions on StackOverflow and the likes.
docker
Learn Docker #5 – What exactly does the Docker Toolbox contain?
So far, we have been playing around with Docker and learnt some random but important commands. Let’s dive a bit deeper and learn some basic concepts and start from what you have already installed… The Docker Toolbox! The toolbox contains the following.
VirtualBox
The Virtual Box is used to host your Linux VM. The default VM is created automatically for you, and the Docker daemon is initialised and set up inside the VM. Your Host client talks to the daemon on the VM and returns the output to your terminal or client.
Continue reading “Learn Docker #5 – What exactly does the Docker Toolbox contain?”→
docker
Learn Docker #6 – Docker Engine, Images & Hub
Docker Engine
Hosted at github, the Docker engine is the core of all this goodness! The Docker engine (or daemon) is standardised so that it looks exactly the same regardless of which host you are running it at. This means that if your code is working well on your Docker Engine, it will continue to work across the board as far as the Docker Engine is same! That’s actually fantastic if you think about it closely.
Continue reading “Learn Docker #6 – Docker Engine, Images & Hub”→
docker
Learn Docker #7 – Docker Container (start, stop, attach, detach & restart)
Things to keep in mind about Containers
- You don’t boot a container. You start it.
- The containers run on a Docker host, which in turn runs on Linux.
- Docker containers are running instances of an Image as you learnt in the previous post.
- Learn $docker run command well, in order to work with containers.
- By default, once the command is executed the containers exit.
Continue reading “Learn Docker #7 – Docker Container (start, stop, attach, detach & restart)”→
docker
Learn Docker #8 – Dockerfile
What is Dockerfile?
You should be pretty comfortable using a Docker Image and creating Containers from it by now. But what if you want to create a custom image explicitly for your requirements?
Answer : Dockerfile!
And remember… Dockerfile != dockerfile != DockerFile. You get the idea.
docker
Learn Docker #9 – Dockerfile (continued)
Tagging an Image
In the previous post, you created an image. As discussed, you can view all images using…
$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
imrahulsoni/nginx-base latest 6507bc42ad5a 20 hours ago 155.7 MB
Notice the Tag. An easy way to do this, is to use the following command… notice that the build command now has a :0.1 attached to it as the tag.
Continue reading “Learn Docker #9 – Dockerfile (continued)”→
Learn Docker的更多相关文章
- Learn Docker(一)—软件安装与常规操作
一.安装Docker Windows平台 在Windows10 X64专业版上可以直接下载Docker原生应用进行安装,在控制面板的程序与功能里启用Hyper-v,之后就可以运行docker程序啦. ...
- learn Docker from scratch (1)
一.前言 Docker容器一个很有趣的东西,下面链接内容适合docker的入门非常棒! 链接如下: http://www.ruanyifeng.com/blog/2018/02/docker-tuto ...
- Docker简明教程(转)
Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...
- Docker简明教程(转)
Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...
- ipv6 docker
DOCKER, IPV6 BASIC CONFIGURATION OF DOCKER ENGINE WITH IPV6 SEPTEMBER 21, 2015 EYEPV6(AT)GMAIL(DOT)C ...
- 001/Docker入门(Mooc)
docker官网:https://www.docker.com/ 1.什么是docker 2.Docker思想 ==> [1].集装箱:保证程序完整(不缺东西,如配置文件等). [2]. ...
- Cheatsheet: 2016 05.01 ~ 05.31
Other Awesome Go - A curated list of awesome Go frameworks, libraries and software Visual Studio Cod ...
- Docker 清理命令集锦
杀死所有正在运行的容器 复制代码代码如下: docker kill $(docker ps -a -q) 删除所有已经停止的容器 复制代码代码如下: docker rm $(docker ps -a ...
- Install Docker on Ubuntu
Install Docker on Ubuntu Estimated reading time: 17 minutes Docker is supported on these Ubuntu oper ...
随机推荐
- POJ 1201 Intervals(图论-差分约束)
Intervals Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 20779 Accepted: 7863 Descri ...
- OPTIMIZE TABLE
INNODB 不支持 mysql> OPTIMIZE TABLE t; +--------+----------+----------+----------------------------- ...
- qt软键盘输入
characterapplicationsignalqt输入法object 1.从QInputContext派生自己的InputContext类 ,例如: class MyInputPanelCo ...
- Nginx【第一篇】安装
一.简介 Nginx("engine x")是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web 和 反向代理 服务器,也是一个 IMAP/POP3/SMT ...
- 玩转Android之数据库框架ActiveAndroid的使用
ActiveAndroid是一个开源的数据库框架,使我们在Android中使用数据库变得更为简单,今天我们就来看看这个数据库框架的使用. 1.引入ActiveAndroid 首先创建我们自己的项目,在 ...
- E: Sub-process /usr/bin/dpkg returned an error code (1)
E: Sub-process /usr/bin/dpkg returned an error code (1) 错误描述 dpkg: error processing archive /var/cac ...
- haproxy部署及配置
HAProxy介绍 (1)HAProxy 是一款提供高可用性.负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy特 ...
- socket.io中emit和on的用法【转】
socket.emit('action');表示发送了一个action命令,命令是字符串的,在另一端接收时,可以这么写: socket.on('action',function(){...});soc ...
- C#相关时间DateTime格式化
C#代码中时间转换为2016-01-24 12:12:12需要如下操作: DateTime.Parse(sj).ToString("yyyy-MM-dd HH:m:ss") 但是O ...
- magento 操作数据库
查: $read = Mage::getSingleton(“core/resource”)->getConnection(‘core_read’); $sql = “selec ...