码迷,mamicode.com
首页 > 其他好文 > 详细

Docker 容器使用

时间:2017-08-31 16:09:38      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:查看   training   需要   port   log   command   contain   ever   网络端口   

运行一个web应用

在docker容器中运行一个 Python Flask 应用来运行一个web应用

[root@node3 ~]# docker run -d -P training/webapp python app.py

参数说明:

  • -d:让容器在后台运行。

  • -P:将容器内部使用的网络端口映射到我们使用的主机上。

查看 WEB 应用容器

docker ps 查看正在运行的容器

[root@node3 ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES
492d7b40ffd0        training/webapp     "python app.py"     5 minutes ago       Up 2 minutes        0.0.0.0:32769->5000/tcp   clever_allen

端口信息

PORTS
0.0.0.0:32769->5000/tcp 

Docker 开放了 5000 端口(默认 Python Flask 端口)映射到主机端口 32769 上。

这时我们可以通过浏览器访问WEB应用

技术分享

 

也可以指定 -p 标识来绑定指定端口
[root@node3 ~]# docker run -d -p 5000:5000 training/webapp python app.py

 

查看容器的网络端口:docker port 容器ID

[root@node3 ~]# docker port 492d7b40ffd0 
5000/tcp -> 0.0.0.0:32769

 

查看WEB应用程序日志

docker logs [ID或者名字] 可以查看容器内部的标准输出。

[root@node3 ~]# docker logs -f 492d7b40ffd0
 * 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.0.0.1 - - [31/Aug/2017 14:14:30] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:14:30] "GET /favicon.ico HTTP/1.1" 404 -
10.0.0.1 - - [31/Aug/2017 14:16:22] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:16:25] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:16:25] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:16:25] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:16:25] "GET / HTTP/1.1" 200 -
10.0.0.1 - - [31/Aug/2017 14:16:26] "GET / HTTP/1.1" 200 -

-f :让 dokcer logs 像使用 tail -f 一样来输出容器内部的标准输出。

从上面,我们可以看到应用程序使用的是 5000 端口并且能够查看到应用程序的访问日志。

 

查看WEB应用程序容器的进程

可以使用 docker top  ID 来查看容器内部运行的进程

[root@node3 ~]# docker top 492d7b40ffd0 

 

检查WEB应用程序

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

[root@node3 ~]# docker inspect 492d7b40ffd0

 

重启WEB应用容器

docker start ID

[root@node3 ~]# docker start 492d7b40ffd0
492d7b40ffd0

 

docker ps -l 查询最后一次创建的容器

[root@node3 ~]# docker ps -l

移除WEB应用容器

可以使用 docker rm 命令来删除不需要的容

[root@node3 ~]# docker rm 3a043f4c45bc
3a043f4c45bc

删除容器时,容器必须是停止状态,否则会报如下错误

 








Docker 容器使用

标签:查看   training   需要   port   log   command   contain   ever   网络端口   

原文地址:http://www.cnblogs.com/wanglan/p/7458255.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!