docker基础(一)

最近学习了一下docker,吸取了很多前辈的经验,在此总结一下:

1.docker简介

docker是一个开源的应用容器引擎,基于GO语言。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。并具有如下特点:

  • Web 应用的自动化打包和发布。

  • 自动化测试和持续集成、发布。

  • 在服务型环境中部署和调整数据库或其他的后台应用。

  •   从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

2.docker安装(引用自http://blog.csdn.net/kdchxue/article/details/50902580)

centos6.5以上版本:yum install https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm

Ubuntu/Debian: curl -sSL https://get.docker.com | sh

          Linux 64bit binary: https://get.docker.com/builds/linux/x86_64/docker-1.7.1

Darwin/OSX 64bit client binary: https://get.docker.com/builds/Darwin/x86_64/docker-1.7.1

Darwin/OSX 32bit client binary: https://get.docker.com/builds/Darwin/i386/docker-1.7.1

Linux 64bit tgz: https://get.docker.com/builds/Linux/x86_64/docker-1.7.1.tgz

Windows 64bit client binary: https://get.docker.com/builds/Windows/x86_64/docker-1.7.1.exe

Windows 32bit client binary: https://get.docker.com/builds/Windows/i386/docker-1.7.1.exe

Centos 6/RHEL 6: https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm

Centos 7/RHEL 7: https://get.docker.com/rpm/1.7.1/centos-7/RPMS/x86_64/docker-engine-1.7.1-1.el7.centos.x86_64.rpm

Fedora 20: https://get.docker.com/rpm/1.7.1/fedora-20/RPMS/x86_64/docker-engine-1.7.1-1.fc20.x86_64.rpm

Fedora21: https://get.docker.com/rpm/1.7.1/fedora-21/RPMS/x86_64/docker-engine-1.7.1-1.fc21.x86_64.rpm

Fedora22: https://get.docker.com/rpm/1.7.1/fedora-22/RPMS/x86_64/docker-engine-1.7.1-1.fc22.x86_64.rpm

3.docker --help命令

docker --help命令可以查看命令的使用方法:
docker command --help 可以查看具体命令的使用方法

4.docker run 命令

(1)docker run ununtu:15.10 /bin/echo "hello world"

使用Ubuntu:15.10镜像创建一个新的容器,并在容器中执行输出“hello world”

其中docker表示其二进制的执行文件;run 与docker组合形成一个容器;

Ubuntu:15.10:指定要运行的镜像,docker先在本地查找镜像是否存在,不存在则在镜像仓库中下载公共镜像。

(2)docker run -i -t ubuntu:15.10 /bin/bash

运行交互式的容器,其中 -t表示在在新容器中指定伪终端或终端,-i表示允许你对容器中的标准输入进行交互。使用exit或Ctrl+d命令退出.

(3)docker run -d ubuntu:15.10 /bin/sh -c "which true:do echo hello world;sleep 1;done"

创建一个以进程方式启动的容器,该命令表示每隔一秒,输出一个hello world;

可以使用docker ps 命令查看正在运行的容器,结果如下:

其中container ID 表示容器ID,names表示容器分配的名字。

使用docker logs container/names 查看容器内的标准输出,结果如下:

5.停止,重启,删除容器的命令

docker stop container ID/names 停止容器

docker restart container ID/names 重启容器

docker rmcontainer ID/names 删除容器(当删除容器时,容器必须处于停止状态,否则会出现以下报错)

6.运行一个web应用

docker run -d -P training/webapp python app.py
-d表示使容器在后台运行;-P表示将容器内部使用的网络端口映射到我们主机上来
使用docker ps命令 查看正在运行的程序,信息中多出了端口映射信息;同时使用浏览器访web应用
同时可以使用小写的-p命令制定绑定端口:

Docker run -d -p 5000:5000  trainging/webapp python app.py(将容器内部的5000端口映射到本地的5000端口上)

使用docker port container ID/names 可以查看端口映射信息

使用docker inspect来查看docker的底层信息。他会返回一个JSON文件记录着docker容器的配置及状态信息

7.查看日志文件

docker logs ID/names可以查看容器内部的标准输出
docker logs -f reverent_leavitt(-f表示像使用tail -f 一样来输出容器内部内容)

引用:http://blog.csdn.net/kdchxue/article/details/50902580

     :http://www.runoob.com/docker/docker-tutorial.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值