docker探索-docker容器基本操作(五)
1、创建一个容器并启动
1.1、docker hello word
Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。
输出Hello world
[root@jacky ubantu]# docker run ubuntu:15.10 /bin/echo "Hello world"
Hello world
各个参数说明:
docker: Docker 的二进制执行文件。
run:与前面的 docker 组合来运行一个容器。
ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
/bin/echo "Hello world": 在启动的容器里执行的命令
1.2、创建交互式容器并启动
[root@jacky jacky]# docker run --dns 8.8.8.8 --dns 8.8.4.4 -it -P centos:7.2.1511 /bin/bash
各个参数说明:
- --dns 指定容器使用的DNS服务器,默认和宿主一致
- -P(大写P) 将容器的80端口映射到主机随机端口
1.3、创建守护式容器并启动
使用镜像nginx:latest以后台模式启动一个容器,将容器的80端口映射到主机的80端口,主机的目录/data映射到容器的/data。
docker run -p : -v /data:/data -d nginx:latest
2、查看本机所有容器
[root@jacky jacky]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9ea0980c3261 nginx:latest "nginx -g 'daemon off" hours ago Up hours 0.0.0.0:->/tcp boring_hawking
25caf2714fe6 ubuntu:15.10 "/bin/bash" hours ago Exited () hours ago houtai-ubuntu
669a12e3d6a3 ubuntu:15.10 "/bin/bash" hours ago Exited () hours ago loving_shirley
1b2abcfbf999 ubuntu:15.10 "/bin/echo 'Hello wor" hours ago Exited () hours ago jolly_kirch
574b3a74c7b2 jacky/ubuntu:14.05 "/bin/bash" hours ago Up hours /tcp, /tcp distracted_meitner
6c76dd14454d 5ae9a10a7f42 "/bin/sh -c 'apt-get " hours ago Exited () hours ago condescending_leavitt
488f3af35f5e centos:7.2. "/bin/bash" hours ago Exited () hours ago drunk_poitras
41b69d7a222e centos:7.2. "/bin/bash" hours ago Exited () hours ago thirsty_feynman
3、查看正在运行的容器
[root@jacky jacky]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9ea0980c3261 nginx:latest "nginx -g 'daemon off" hours ago Up hours 0.0.0.0:->/tcp boring_hawking
574b3a74c7b2 jacky/ubuntu:14.05 "/bin/bash" hours ago Up hours /tcp, /tcp distracted_meitner
4、停止正在运行的容器
[root@jacky jacky]# docker stop 9ea0980c3261
9ea0980c3261表示容器Id
5、运行已经创建好的容器
[root@jacky jacky]# docker start 9ea0980c3261
9ea0980c3261
[root@jacky jacky]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9ea0980c3261 nginx:latest "nginx -g 'daemon off" hours ago Up seconds 0.0.0.0:->/tcp boring_hawking
[root@jacky jacky]#
6、删除容器
[root@jacky jacky]# docker rm 41b69d7a222e
41b69d7a222e
7、查看正在运行的容器
[root@jacky jacky]# docker inspect 488f3af35f5e
说明:如果容器是centos、utuntu等等操作系统容器,是可以看到容器的Ip地址和dns信息
8、进入到容器中
[root@jacky jacky]# docker attach 488f3af35f5e
[root@488f3af35f5e /]#
9、查看容器的端口映射
[root@jacky jacky]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9ea0980c3261 nginx:latest "nginx -g 'daemon off" hours ago Up minutes 0.0.0.0:->/tcp boring_hawking
[root@jacky jacky]# docker port 9ea0980c3261
/tcp -> 0.0.0.0:
通过docker ps 命令可以查看到容器的端口映射,docker还提供了另一个快捷方式:docker port,使用 docker port 可以查看指定 (ID或者名字)容器的某个确定端口映射到宿主机的端口号
10、查看容器内部运行进程
[root@jacky jacky]# docker top 9ea0980c3261
UID PID PPID C STIME TTY TIME CMD
root : ? :: nginx: master process nginx -g daemon off;
: ? :: nginx: worker process
11、查看容器运行日志信息
docker logs -f 7a38a1ad55c6
-f:让 dokcer logs 像使用 tail -f 一样来输出容器内部的标准输出。
docker探索-docker容器基本操作(五)的更多相关文章
- Docker学习(3) 容器基本操作
容器的基本操作
- docker探索-docker私有仓库搭建(九)
前言 本文讲解搭建docker的私有仓库,和Mavan的管理一样,Dockers不仅提供了一个中央仓库,同时也允许我们使用registry搭建本地私有仓库 一.环境 ip 主机名 操作系统 角色 19 ...
- docker探索-docker安装运行tomcat(六)
前言 本地已经搭建好了,tomcat容器,本来想自己写一篇,在开源中国一篇不错的教程,就转载过来了 本文转自:https://my.oschina.net/sunchp/blog/61652 ...
- docker探索-Docker 1.13 编排能力进化(十三)
简介 docker stack deploy和docker-compose up,这两个命令都是操作compose的yml文件的,有什么区别?想知道这个问题,看下面文章 https://yq.al ...
- Docker 容器基本操作[Docker 系列-2]
Docker 入门及安装[Docker 系列-1] 镜像就像是一个安装程序,而容器则是程序运行时的一个状态. 查看容器 查看容器 启动 docker 后,使用 docker ps 命令可以查看当前正 ...
- Docker 镜像、容器、仓库的概念及基本操作
Docker 包括三个基本概念: 镜像(Image)容器(Container)仓库(Repository) 这三部分组成了Docker的整个生命周期,如下图所示,容器是由镜像实例化而来的,这和我们学习 ...
- Docker 使用指南 (一)—— 基本操作
版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98来源:腾云阁 https://www.qcloud ...
- Docker背后的容器管理——Libcontainer深度解析
Libcontainer 是Docker中用于容器管理的包,它基于Go语言实现,通过管理namespaces.cgroups.capabilities以及文件系统来进行容器控制.你可以使用Libcon ...
- docker~在centos容器中安装新程序
上一篇我们使用了阿里加速器安装了centos镜像,然后创建了一个新容器,运行了这个镜像,这一讲我们来为这个镜像添加一些应用程序,然后再保存容器,push容器到仓储,大家就可以直接pull我生产的容器了 ...
随机推荐
- 【Linux】关于减号 - 的用途
管线命令在 bash 的连续处理程序中是相当重要的!另外,在 log file 的分析当中也是相当重要的一环, 所以请特别留意!另外,在管线命令当中,常常会使用到前一个命令的 stdout 作为这次的 ...
- 基于matplotlib的数据可视化 - 三维曲面图gca
1 语法 ax = plt.gca(projection='3d')ax.plot_surface(x,y,z,rstride=行步距,cstride=列步距,cmap=颜色映射) gca(**kwa ...
- [AaronYang]C#人爱学不学[1]
当前编写时间:2014年12月24日21:11:14 编写人:杨洋(Aaronyang) 新文章:[AaronYang]C#人爱学不学[1] 声明:->可以理解为 联想到,或者关联的意思. ...
- mysqld Can’t start server : Bind on unix socket: Permission denied
启动mysql报错: mysqld Can’t start server : Bind on unix socket: Permission denied 原因: mysql.sock无法建立,权限问 ...
- [转]Redis几个认识误区
转自timyang:http://timyang.net/data/redis-misunderstanding/ 前几天微博发生了一起大的系统故障,很多技术的朋友都比较关心,其中的原因不会超出Jam ...
- MPU6050陀螺仪和加速度计的校准
加速度计和陀螺仪的校准: 在传感器静止不动水平放置时,测出陀螺仪和加速度计各轴的偏移值,保存.以后每次上电调用dmp_set_xx_bias()就行了. u8 run_self_test(void) ...
- python dict 和 json 互转
在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作. 在Python中自带json库.通过import json导入. import json 在json模块有2个方 ...
- [转]Servlet 单例多线程
Servlet如何处理多个请求访问? Servlet容器默认是采用单实例多线程的方式处理多个请求的: 1.当web服务器启动的时候(或客户端发送请求到服务器时),Servlet就被加载并实例化(只存在 ...
- [转]OkHttp使用完全教程
1. 历史上Http请求库优缺点 在讲述OkHttp之前, 我们看下没有OkHttp的时代, 我们是如何完成http请求的.在没有OkHttp的日子, 我们使用HttpURLConnection或者H ...
- struts2 常量
struts.i18n.encoding 指定web应用的默认编码集