Docker基础
一、docker概念
Docker为集装箱的概念,开发人员可以将开发的程序封装到docker中,如果要移交给运维,可以直接部署开发docker即可,省时,效率快,且不会产生冲突。
二、mac版docker下载
2.下载完成后,直接将下载好的docker拖到application中完成安装
3.双击Docker.app启动docker,docker图标会出现在状态栏中,点击显示“docker is running”
三、docker相关介绍
1.docker engine:一个便捷式、轻量级的运行环境和包管理器
2.docker compose:用于管理多个容器,可以使用命令同时启动或关闭
3.docker machine:一种提供管理主机的工具
四、命令
1.docker --version:查看docker版本
2.docker-compose --version:查看docker compose的版本
3.docker-machine --version:查看docker machine的版本
4.docker ps
(1)docker ps:显示所有正在运行的容器信息
(2)docker ps -a:显示所有的容器,包括未运行的
(3)docker ps -f:根据条件过滤显示的内容
(4)docker ps --help:可以查看所有的docker ps 的语法
(5)docker ps -l:显示最近创建的容器
(6)docker ps --no-trunc:不截断输出
(7)docker ps -n:列出最近创建的n个容器
(8)docker ps -s:显示总的文件大小
(9)docker ps -q:静默模式,只显示容器编号
5.docker run hello-world:查看docker是否正常运行
6.docker stop 容器名:关闭某个正在运行的容器
7.docker restart 容器名:启动某个容器
8.docker images:查看本地镜像
9.docker rmi 镜像名:删除某个镜像(不能是使用中的)
五、docker基本使用
1.输出hello world
命令:docker run 仓库源:tag /bin/echo “hello word”
相当于:docker run 仓库源:tag /bin/bash
echo “hello world"
- docker run:运行一个容器
- 镜像名:tag:指定要运行的镜像,docker首先会在本地查找镜像是否存在,若不存在,会自动从镜像仓库中下载公共镜像
- /bin/echo “hello word”:在启动的容器中执行的命令
2.运行交互式的容器
命令:docker run -i -t 仓库源:tag /bin/bash
- -i:允许你对容器内的标准输入进行交互
- -t:在容器中重新创建一个指定系统的终端
- cat/proc/version:查看当前版本的信息
- ls:当前目录下的文件列表
- exit:退出当前容器
3.启动容器
命令:
docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
- -d:表示deamon,以后台方式启动容器,保证容器的执行不会停止,每一秒都输出hello world
- 执行结果为:容器ID
- docker logs 容器ID:查看容器执行结果
- docker stop 容器ID:停止容器的执行
Docker使用
一、Docker容器使用
1.docker客户端
- docker:用于查看所有的命令
- docker command --help:可以查看各个命令的具体使用方法
2.运行web应用
- 命令:docker run -d -P training/webapp python app.py(如果没有该容器则会自动下载)
- -d:让容器在后台运行
- -P:将容器内部使用的网络端口映射到我们使用的主机上
- -p:容器内部端口绑定到指定的主机端口
- 运行后端口信息会增加ports:0.0.0.0:32769->5000/tcp(docker开放端口5000映射到主机的32769端口)
- 可以通过主机+端口号访问web应用
- docker port 容器ID:直接查找某个容器的端口信息
- 查看容器内部标准输出:docker logs -f 容器ID(按Ctrl+c退出)
- 查看容器底层信息:docker inspect 容器ID
二、Docker镜像使用
1.查看镜像
- 命令:docker images(列出本地主机上所有的镜像)
- 显示字段:repository(表示镜像的仓库源),tag(镜像标签,一个仓库源中可能有多个tag,版本),image ID(单独标明镜像),created(镜像创建的时间),size(镜像大小)
2.获取新的镜像
- 命令:docker pull 仓库源:tag
3.查找镜像
- 命令:docker search 镜像名