[root@yz6205 ~]# docker images
INFO[0063] GET /v1.19/images/json
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest 7bd023c8937d 41 hours ago 122 MB
ubuntu 14.04 0e7d4a488bcc 41 hours ago 187.9 MB
centos latest db0f5936b391 11 days ago 196.7 MB
[root@yz6205 ~]# docker run -t -i ubuntu /bin/bash
INFO[0127] POST /v1.19/containers/create
INFO[0143] POST /v1.19/containers/5b1280645766492db1bf43f54a17b934038a2bfa3b9a45ba161bd0653e406a78/attach?stderr=1&stdin=1&stdout=1&stream=1
INFO[0143] POST /v1.19/containers/5b1280645766492db1bf43f54a17b934038a2bfa3b9a45ba161bd0653e406a78/start
INFO[0143] POST /v1.19/containers/5b1280645766492db1bf43f54a17b934038a2bfa3b9a45ba161bd0653e406a78/resize?h=26&w=121
root@5b1280645766:/#

创建镜像
1,基于已有镜像的容器创建
root@68dea79aa079:~# cat /etc/issue
Ubuntu 16.04 LTS \n \l

[root@yz6205 ~]# docker commit -m "Add a new file" -a "docker newbee" 68dea79aa079 test
933b24d02ecfacb81ad0afa1c0d85d651eeea8dba3c6e2ec0e3859fff92eb9a2
[root@yz6205 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
test latest 933b24d02ecf About a minute ago 122 MB
ubuntu latest 7bd023c8937d 41 hours ago 122 MB

存入镜像
[root@yz6205 ~]# docker save -o ubuntu_14.04.tar 933b24d02ecf

载入镜像
[root@yz6205 ~]# docker load --input ubuntu_14.04.tar
或者:
[root@yz6205 ~]# docker load < ubuntu_14.04.tar

查看log信息
[root@yz6205 ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
074b5ad4936f ubuntu "/bin/bash" About a minute ago Exited (0) 44 seconds ago admiring_mccarthy
[root@yz6205 ~]# docker logs 074
root@074b5ad4936f:/# pwd
/
root@074b5ad4936f:/# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
root@074b5ad4936f:/# ps
PID TTY TIME CMD
1 ? 00:00:00 bash
13 ? 00:00:00 ps
root@074b5ad4936f:/# exit
exit

终止容器
[root@yz6205 ~]# docker stop 074
074
[root@yz6205 ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
074b5ad4936f ubuntu "/bin/bash" 5 minutes ago Exited (0) 4 minutes ago admiring_mccarthy
[root@yz6205 ~]# docker start 074
074
[root@yz6205 ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
074b5ad4936f ubuntu "/bin/bash" 5 minutes ago Up 1 seconds

查看处于终止状态下的容器的ID信息
[root@yz6205 ~]# docker ps -a -q
074b5ad4936f
67156b0cfc7c
68dea79aa079
5b1280645766
d65d3ac7c374
10bbf0542e24
33e3c46add98
dac0735f6767
31472d1eefcb

重启docker
[root@yz6205 ~]# docker restart 074
074
[root@yz6205 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
074b5ad4936f ubuntu "/bin/bash" 8 minutes ago Up 9 seconds admiring_mccarthy

-d参数,容器启动后讲进入后台
[root@yz6205 ~]# docker run -idt centos
193840bce6de1e26e1263239c7a3fee9c9bb2c8e9b0f43fe0ba4084676e37bfd

[root@yz6205 ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
193840bce6de centos "/bin/bash" 48 seconds ago Up 36 seconds sad_albattani

可使docket attach 、docket exec 、nsenter等工具查看
[root@yz6205 ~]# docker attach sad_albattani
[root@193840bce6de /]#

[root@yz6205 ~]# docker exec -ti 193840bce6de /bin/bash
[root@193840bce6de /]#

导出容器
[root@yz6205 soft]# docker export 193 > 193840bce6de_centos_tar
[root@yz6205 soft]# ls
193840bce6de_centos_tar

docker登陆注册
[root@yz6205 soft]# docker login
Username: yongsan
Password: 123qwe
Email: yongsan@staff.sina.com.cn
WARNING: login credentials saved in /root/.docker/config.json
Account created. Please use the confirmation link we sent to your e-mail to activate it.

使用registry创建私有仓库
[root@yz6205 soft]# docker run -d -p 5000:5000 registry
Unable to find image 'registry:latest' locally
latest: Pulling from registry
f15ce52fc004: Pull complete
c4fae638e7ce: Pull complete
a4c5be5b6e59: Pull complete
8693db7e8a00: Pull complete
c75fbf48538e: Downloading [=======================================> ] 70.28 MB/89.2 MB
87c008f1a79b: Download complete
5a7b60cbc471: Download complete
81569492134a: Download complete
0aed6b236dec: Download complete

管理私有仓库
docker tag 命令给镜像标记重命名
[root@yz6205 soft]# docker tag ubuntu:14.04 10.39.6.205:5000/test
[root@yz6205 soft]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
test centos 2a3044c7fb64 58 minutes ago 196.7 MB
test 193840bce6de a753d5365391 59 minutes ago 196.7 MB
ubuntu latest 7bd023c8937d 43 hours ago 122 MB
10.39.6.205:5000/test latest 0e7d4a488bcc 43 hours ago 187.9 MB

下面使用training/webapp 镜像创建一个web容器,并创建一个数据卷挂载到容器的/data0/soft目录
[root@yz6205 soft]# docker run -d --name web -v /data0/soft training/webapp python app.py
Unable to find image 'training/webapp:latest' locally
latest: Pulling from training/webapp
e9e06b06e14c: Pull complete
a82efea989f9: Pull complete
37bea4ee0c81: Pull complete
07f8e8c5e660: Pull complete
23f0158a1fbe: Pull complete
0a4852b23749: Pull complete
7d0ff9745632: Pull complete
99b0d955e85d: Pull complete
33e109f2ff13: Pull complete
cc06fd877d54: Pull complete
b1ae241d644a: Pull complete
b37deb56df95: Pull complete
02a8815912ca: Already exists
Digest: sha256:06e9c1983bd6d5db5fba376ccd63bfa529e8d02f23d5079b8f74a616308fb11d
Status: Downloaded newer image for training/webapp:latest
1c413b58919b2728cabede1639d1a12fa72fe74ab3cfee56a76fdb6ae1bc416a

-p/P指定端口
[root@yz6205 soft]# docker run -d -P training/webapp python app.py
48beffc1c93351262ef03c9f65e7f4364e5e6414f3e40bd5db256771f0110102

[root@yz6205 dir]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
48beffc1c933 training/webapp "python app.py" 44 seconds ago Up 27 seconds 0.0.0.0:32768->5000/tcp clever_goodall

访问宿主机的32768端口即可访问容器内web应用提供的页面了
[root@yz6205 soft]# curl http://10.39.6.205:32768
Hello world![root@yz6205 soft]#

[root@yz6205 dir]# docker logs -f clever_goodall
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
10.39.6.205 - - [29/May/2016 11:23:47] "GET / HTTP/1.1" 200 -
10.212.60.113 - - [29/May/2016 11:24:10] "GET / HTTP/1.1" 200 -
10.212.60.113 - - [29/May/2016 11:24:10] "GET /favicon.ico HTTP/1.1" 404 -

-p可以将本地的5000端口映射到容器的5000端口
[root@yz6205 soft]# docker run -d -p 5000:5000 training/webapp python app.py
b801e4036691e60b0b671883e4b06b8414aef23e495ed2b8cbe7f841c7a8746b

[root@yz6205 soft]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b801e4036691 training/webapp "python app.py" 56 seconds ago Up 35 seconds 0.0.0.0:5000->5000/tcp prickly_yonath

docker的应用的更多相关文章

  1. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  2. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  3. Docker 第一篇--初识docker

    已经多年不写博客, 看完<晓松奇谈>最后一期猛然觉醒, 决定仔细梳理下自己这几年的知识脉络. 既然决定写, 那么首先就从最近2年热门的开源项目Docker开始.Docker 这两年在国内很 ...

  4. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  5. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  6. scrapy爬虫docker部署

    spider_docker 接我上篇博客,为爬虫引用创建container,包括的模块:scrapy, mongo, celery, rabbitmq,连接https://github.com/Liu ...

  7. [原][Docker]特性与原理解析

    Docker特性与原理解析 文章假设你已经熟悉了Docker的基本命令和基本知识 首先看看Docker提供了哪些特性: 交互式Shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上, ...

  8. 开发者的利器:Docker 理解与使用

    困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...

  9. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

  10. 微服务与Docker介绍

    什么是微服务 微服务应用的一个最大的优点是,它们往往比传统的应用程序更有效地利用计算资源.这是因为它们通过扩展组件来处理功能瓶颈问题.这样一来,开发人员只需要为额外的组件部署计算资源,而不需要部署一个 ...

随机推荐

  1. 一段能瞬间秒杀所有版本IE的简单HTML代码

    许多人都非常讨厌InternetExplorer,在西方万圣节即将到来之际,让我们来看一个真正吓人的东西——如何用一段简单的HTML和CSS,将任何版本的IE搞死.我们只需要简单地打开任意文本编辑器, ...

  2. 5.MongoDB CRUD Operations-官方文档摘录

    总结 1. CRUD:create, read, update, and delete DOCUMENT 2.在3.2版本的插入方式 db.collection.insertOne() db.coll ...

  3. Python3+Selenium3自动化测试-(五)

    这里来说一说selenium中的等待方式,其实在webdriver只有两种类型等待方式,显式等待和隐式等待,之前是在程序运行过程中使用time模块中的sleep进行代码的休眠进行强制等待,是显式等待中 ...

  4. oracle入门(4)——少而常用的命令

    [本文介绍] 本文将介绍使用oracle的常用命令,不是”大全“,但少而实用. 下面的命令都是在项目用到的才记录下来的,如果以后用到其他的,会不断更新. [命令介绍] 描述: 命令: [数据库]   ...

  5. mysql 建立表之间关系 练习 1

    练习:账号信息表,用户组,主机表,主机组 #用户表 mysql> create table user( id int not null unique auto_increment, userna ...

  6. maven项目乱码以及项目名出现红叉

    中文乱码 出现中文乱码的时候可以看一下maven项目里面的pom.xml是不是设置了UTF-8,如果设置了UTF-8,只需将UTF-8去掉就好.因为默认的是GBK国际编码,UTF-8是中文编码,自己建 ...

  7. WinForm TCP异步连接之服务器端

    C# — WinForm TCP连接之服务器端 TCP连接之服务器端,涉及到如下三个函数,分别是: /***************************** ** 函数功能: 服务端监听 ** 输 ...

  8. CodeForces - 786B Legacy (线段树+DIjkstra+思维)

    题意:给N个点和Q条选项,有三种类型的选项:1.从u到v花费w修建一条路:2.从u到下标区间为[L,R]的点花费w修建一条路; 3.从下标区间为[L,R]的点到u花费w修建一条路. 然后求起点s到其余 ...

  9. C# Winform 窗体传值 利用委托 子窗体传值给父窗体

    常用的Winform窗体传值有两种方式. 1.更改Form.designer.cs文件,将控件的设为Public,供子窗体访问. 在designer.cs文件的最后,找到你的控件声明. private ...

  10. 一种BIM缺失多态性介导的酪氨酸激酶抑制剂的耐药性

    论文名称:A common BIM deletion polymorphism mediates intrinsic resistance and inferior responses to tyro ...