Docker的安装使用
2016-01-07 16:44
579 查看
一、简介
Docker是一个开源的基于 LXC(Linux Container) 的高级容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器,能提供虚机化,从而达到隔离应用,可移植到任意安装有Docker的机器上运行,开发者编译测试通过的容器可以批量地在生产环境中部署。Docker通常用于如下场景:
web应用的自动化打包和发布;
自动化测试和持续集成、发布;
在服务型环境中部署和调整数据库或其他的后台应用;
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
二、安装
安装以Mac OS X为例。由于Docker引擎是使用了特定于Linux内核的特性,所以需要安装一个轻量级的虚拟机(如VirtualBox)来在OSX上运行。但我们不需要自己的下载安装VirtualBox,我们只需要下载官方提供的Boot2Docker来运行Docker守护进程。下载 Boot2Docker
https://github.com/boot2docker/osx-installer/releases
下载最新版本的.pkg
安装 Boot2Docker
双击打开.pkg包后按照安装向导完成安装即可。安装完成后,可以看到Applications里多了两个应用。
配置启动Docker
初始化boot2docker:
$ boot2docker init
这一步会用ssh工具生成用于docker的ssh的公钥和私钥。这一步还会需要下载一个boot2docker的iso文件。
Downloading boot2docker ISO image...
如果和我一样在终端看了这句话很久都没有什么反应,可以去https://github.com/boot2docker/boot2docker/releases 下载最新的boot2docker.iso文件到 ~/.boot2docker 路径下,再init一次即可。
然后启动boot2docker:
$ boot2docker start Started. Writing /Users/czb/.boot2docker/certs/boot2docker-vm/ca.pem Writing /Users/czb/.boot2docker/certs/boot2docker-vm/cert.pem Writing /Users/czb/.boot2docker/certs/boot2docker-vm/key.pem To connect the Docker client to the Docker daemon, please set: export DOCKER_HOST=tcp://192.168.59.103:2376 export DOCKER_CERT_PATH=/Users/czb/.boot2docker/certs/boot2docker-vm export DOCKER_TLS_VERIFY=1 Or run: `eval "$(boot2docker shellinit)"`
启动完成后,boot2docker提醒你要配置docker的访问环境,你可以自己去添加环境变量,也可以运行boot2docker提供的命令去帮你配置好。其中DOCKER_HOST就是之后访问虚拟机的地址。
想进入docker的控制台只需要执行boot2docker的ssh:
$ boot2docker ssh ## . ## ## ## == ## ## ## ## ## === /"""""""""""""""""\___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\_______/ _ _ ____ _ _ | |__ ___ ___ | |_|___ \ __| | ___ ___| |_____ _ __ | '_ \ / _ \ / _ | __| __) / _` |/ _ \ / __| |/ / _ \ '__| | |_) | (_) | (_) | |_ / __/ (_| | (_) | (__| < __/ | |_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_| Boot2Docker version 1.9.1, build master : cef800b - Fri Nov 20 19:33:59 UTC 2015 Docker version 1.9.1, build a34a1d5
三、运行第一个docker程序
了解docker的使用可以运行一下帮助命令:$ docker -h
要运行docker程序,可以用docker的run命令。
如运行一个叫 “hello-world” 的程序:
$ docker run hello-world
首先docker会在本地查找是否有这个程序的镜像,而这当然是不会有的,因为我们才刚装好docker。然后docker就会从远程Docker registry server查找并下载该程序的最新镜像。
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world b901d36b6f2f: Verifying Checksum 0a6ba66e537a: Pulling fs layer Pulling repository docker.io/library/hello-world 975b84d108f1: Download complete 3f12c794407e: Download complete Status: Downloaded newer image for hello-world:latest
然后下载完成后我们就可以看到这个程序的最终运行输出的结果:
Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com For more examples and ideas, visit: https://docs.docker.com/userguide/
相关文章推荐
- docker容器的网络信息查看
- 在windows下的安装Docker的教程
- 8个你可能不知道的Docker知识
- 在Docker中自动化部署Ruby on Rails的教程
- 搭建基于Docker的PHP开发环境的详细教程
- 利用OpenVSwitch在多台主机上部署Docker的教程
- ubuntu14.04+docker的安装及使用
- Docker 清理命令集锦
- 再Docker中架设完整的WordPress站点全攻略
- 基于 Docker 开发 NodeJS 应用
- 在Docker上部署Python的Flask框架的教程
- 在Docker上开始部署Python应用的教程
- 详解在Python和IPython中使用Docker
- 使用IPython来操作Docker容器的入门指引
- OSX下brew安装docker(boot2docker)
- docker 设置TLS远程访问
- mesos + marathon + docker部署
- docker-registry server部署
- python3操作Docker Remote API
- Docker使用supervisor启动Mysql