Docker 常用命令(二)
4. 查看Docker镜像创建历史:
docker history flaskhello
3. Docker提交镜像
docker build -t flaskhello .
docker run -p 4000:80flaskhello
docker run -d -p 4000:80flaskhello
docker tagflaskhellojohn/get-started:part1
docker push xiaofeier312/learning:v0.1flaskhi
2.Docker 容器镜像删除
1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q)
如果想要删除所有container的话再加一个指令: docker rm $(docker ps -a -q)
2.查看当前有些什么images docker images
3.删除images,通过image的id来指定删除谁 docker rmi <image id>
想要删除untagged images,也就是那些id为<None>的image的话可以用docker rmi $(docker images | grep "^<none>" | awk "{print $3}") 要删除全部image的话 docker rmi $(docker images -q)
1. 在做练习的时候, 一直无法成功:
导出服务端口
# 将4444端口从容器导出,在容器内部通过nc监听到4444端口(nc是一个简单的监听器,可以接收用户的输入)
$ JOB=$(docker run -d -p 4444 ubuntu:12.10 /bin/nc -l 4444)
# 通过docker port可以查看主机上哪一个端口映射到了容器的 4444端口(docker默认使用nat映射方式)
$ PORT=$(docker port $JOB 4444 | awk -F: '{ print $2 }')
# 向主机的端口,发送hello world
$ echo hello world | nc 127.0.0.1 $PORT
# 确认容器收到了hello world
$ echo "Daemon received: $(docker logs $JOB)"
剖析:
- nc是一个简单的监听指定端口的程序
- -p表示导出容器的指定端口,由于没有指定主机端口,因此是随机分配的
- 外部程序可以通过主机的端口,间接访问容器的4444端口
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
分析发现 Ubuntu的docker镜像 没有很多命令, 先安装nc
apt-get install netcat
之后也一直无法用host连接镜像的端口,
于是在镜像里调试:
>>nc -l 4444&
>>nc 127.0.0.1 4444
发现报错, 根本无法连接
安装netstat,后查看nc的端口监听的不是4444
查看当前版本nc的帮助发现,当前版本,需要用
>>nc -l -p 4444
解决.
Docker 常用命令(二)的更多相关文章
- docker常用命令(二)
把镜像保存到本为一个文件 docker save -o filename.tar imagename:tag 载入保存在本地的镜像 docker load < filename.tar 或者 d ...
- Docker常用命令(二)
Docker常用命令 查看Docker所有正在运行的容器 docker ps 查看Docker已退出的容器 docker ps -a 查看Docker所有镜像 docker images 删除镜像 删 ...
- Docker应用二:docker常用命令介绍
Docker常用命令使用介绍 docker中常用的命令: 1.docker search image_name:搜查镜像 2.docker pull image_name:从镜像库中拉去镜像 3.d ...
- 【Docker】(3)---linux部署Docker、Docker常用命令
linux部署Docker.Docker常用命令 本次部署Linux版本:CentOS 7.4 64位. 说明: 因为Docker是基于Linux 64bit的 所以Docker要求64位的系统且内核 ...
- docker常用命令与容器创建
################docker安装##################### Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个 ...
- docker常用命令,及进入Tomcat的WebApps发布目录(就是进入docker容器后台目录)
docker常用命令,及进入Tomcat的WebApps发布目录(就是进入docker容器后台目录) 一.常用命令 1.显示所有的容器,包括未运行的 docker ps -a 2.启动容器.注 ...
- Docker(三)Docker常用命令
Docker常用命令 帮助命令 # 显示 Docker 版本信息 docker version # 显示系统信息,包括镜像和容器的数量 docker info # 查看帮助文档 帮助文档地址:http ...
- docker常用命令、镜像命令、容器命令、数据卷,使用dockerFile创建镜像,dockefile的语法规则。
一.docker常用命令? 1. 常用帮助命令 1.1 docker的信息以及版本号 /* docker info 查看docker的信息 images2 docker本身就是一个镜像. docker ...
- 『现学现忘』Docker常用命令 — 21、容器常用命令(三)
目录 13.进入正在运行的容器并以命令行交互 (1)方式一 (2)方式二 (3)attach和exec的区别 14.从容器内拷贝文件到主机上 15.Docker常用命令小结 (1)容器生命周期管理 ( ...
随机推荐
- Fib数列2 费马小定理+矩阵乘法
题解: 费马小定理 a^(p-1)=1(mod p) 这里推广到矩阵也是成立的 所以我们可以对(2^n)%(p-1) 然后矩阵乘法维护就好了 模数较大使用快速乘
- pandas处理finance.yahoo股票数据 WTI CL USO OIL
1.参考 用Python做科学计算-基础篇 »matplotlib-绘制精美的图表 »快速绘图 使用pyplot模块绘图 2.数据来源 CL USO OIL 3.代码 #encoding='utf-8 ...
- CGAffineTransform的使用
typedef struct CGAffineTransform CGAffineTransform; struct CGAffineTransform { CGFloat a, b, c, d; C ...
- 【转】android:paddingLeft与android:layout_marginLeft的区别
http://www.blogjava.net/anchor110/articles/342206.html 当按钮分别设置以上两个属性时,得到的效果是不一样的. android:paddingLef ...
- day9.初始函数练习题
1.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def new(args): a = [] for I in range(1,len(args),2) ...
- BZOJ1131 [POI2008]Sta 其他
原文链接http://www.cnblogs.com/zhouzhendong/p/8081100.html 题目传送门 - BZOJ1131 题意概括 给出一个N个点的树,找出一个点来,以这个点为根 ...
- Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第十三集之Redis的单机版搭建】
(转载其他博客的安装步骤,截图是自己的) 1, 第一步:安装gcc编译环境 yum install gcc-c++ 第二步:把redis的源码上传到linux服务器. 第三步:解压缩. tar -zx ...
- 不同路径(一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径?)
示例 1: 输入: m = 3, n = 2 输出: 3 解释: 从左上角开始,总共有 3 条路径可以到达右下角. 1. 向右 -> 向右 -> 向下 2. 向右 -> 向下 -&g ...
- day10.函数,函数的参数
函数的思维导图: 老师的笔记 昨天内容概括 #组长:默写统一交给组长 #不建议看视频 #上课敲过的所有的例子 # 1.看一遍.看能不能看懂 # 2.给每一道题起一个名字或者一句描述 # 3.看着文字, ...
- Hdu-2016解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2016 题目解析:输入n个数据,找出n个数据中最小的数据,将它与第一个数据进行交换.(这里可得看清题意, ...