Docker基础+常用命令

1.docker简介
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

2.docker架构
docker的容器通过docker的镜像来创建,相当于面向对象里的对象和类
镜像(类) 容器(对象)。
Docker基础+常用命令_第1张图片

3.Docker的安装
网上有很多教程。大家可以自行百度在不同的操作系统中如何安装docker
4.docker常见用法
1.docker hello world
命令:sudo docker run ubuntu:16.04 /bin/echo “Hello world”
Docker基础+常用命令_第2张图片
Docker 以 ubuntu16.04 镜像创建一个新容器,然后在容器里执行 bin/echo “Hello world”,然后输出结果。
2.交互式容器:

docker run -i -t 用来进行交互
例如命令:docker run -i -t ubuntu:16.04 /bin/bash
-t:在新容器内指定一个伪终端或终端。
-i:允许你对容器内的标准输入 (STDIN) 进行交互。
运行命令 cat /proc/version和ls分别查看当前系统的版本信息和当前目录下的文件列表
Docker基础+常用命令_第3张图片
也就相当于我们有一个ubuntu16.04系统的容器了,这个系统和我们本身的Ubuntu系统是隔离的。相当于有个隔离的环境。
退出交互模式 exit命令或者CTRL+D
4.启动容器(后台模式)
docker run -d ubuntu:16.04 /bin/sh -c “while true; do echo hello world; sleep 1; done”
Docker基础+常用命令_第4张图片
启动命令后会生成一串字符:容器的ID 用来唯一标识容器的。
使用docker ps 命令查看运行的容器
在这里插入图片描述
使用docker logs + ID 查看容器的标准输出

我们可以看到我们之前写的循环输出的内容。
docker stop ID 停止容器
Docker基础+常用命令_第5张图片
之后docker ps之后就会发现之前的容器ID不存在了。

5.docker容器使用
docker 容器中运行一个Flask 应用
docker pull training/webapp :下载一个镜像 docker pull 是下载的命令
docker run -d -P trainig/webapp python app.py:-d:让容器在后台运行。-P:将容器内部使用的网络端口映射到我们使用的主机上。这样再本机中可以通过ip端口访问了。
在这里插入图片描述

Docker基础+常用命令_第6张图片
通过访问我们可以看到网页的输出!
当然映射的端口是随机分配的,自己也可以再运行的时候设置不同的端口,Flask默认端口是5000,我们可以映射到本机也是5000,或者其他的。
docker run -d -p 5000:5000 training/webapp python app.py
通过命令docker logs -f ID/name 来查看应用程序的日志
在这里插入图片描述
停止web应用容器
docker stop ID/name(容器ID或者容器的名称)
查询已经创建的容器
docker ps -a :查看所有
docker ps -l:查看最近一次
重启已经存在的容器
docker start ID/name
6.docker 镜像的使用
当容器运行时,使用的镜像本地不存在,docker就会自动从docker镜像仓库中下载。
docker images:列出本地主机上的镜像
docker pull Ubuntu:16.04 : 获取一个新的镜像源
docker search httpd : 查找镜像

Docker基础+常用命令_第7张图片

你可能感兴趣的:(python知识杂记)