Docker一个运行环境部署好后,可一直重复使用的工具。
Docker的三个基本概念:镜像,容器,仓库
以下不包括Docker的下载安装,但你想几分钟就使用和熟练了解Docker,那么请继续往下看~
镜像 --> 容器;
镜像集中于仓库;
仓库中有镜像,镜像被容器使用。
(镜像中可以有多个组件,通过build自定义创建镜像,创建Dockerfile文件写入组件信息,如redis,php,mysql,python...)。
Docker Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
Docker Compose是用于定义和运行多容器 Docker 应用程序的工具。
Docker Machine是一种可以在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。
- docker search redis '搜索redis版本'
- docker pull redis:latest '加载redis最新版本的镜像'
- docker images '查看本地镜像是否安装成功'
- docker run -itd --name redis_test -p 6379:1111 redis
- '使用镜像redis,运行容器名字为redis_test,容器端口1111(后)映射到本机端口(前)6379'
- docker ps '查看容器运行信息'
- docker exec -it redis_test /bin/bash '进入容器的终端,可查看容器中的redis版本'
- docker run --name phpAndredis -p 80:80 -d \
- -v ~/nginx/www:/www \ '将主机的目录/nginx/www挂载到容器的/www'
- -v ~/conf/conf.d:/etc/conf \
- --link redis_test:redis \ '把redis_test的网络并入下面的php'
- php
- docker images '显示本地的镜像'
- docker pull ubuntu:11 '加载镜像'
- docker search httpd '查找镜像'
- docker rmi httpd '删除镜像'
- docker run -it ubuntu:11 /bin/bash '创建容器进入终端'
- apt-get update '更新镜像'
- docker commit -m="描述信息" -a="作者" 容器id 创建目标镜像名字 '提交容器副本'
- docker build -t diy_centos . '自定义创建镜像,通过创建Dockerfile文件,写指令
- -t创建的目标镜像名字,[.] Dockerfile文件所在目录'
- docker tag 容器id diy_centos:whiteV1 '设置镜像标签'
- docker ps -a '查看所有容器'
- docker start/stop/restart 容器id(例如:913791ibi31) '启动/停止/重启 对应id的容器'
- docker attach 容器id '进入对应id的容器,退出时停止容器'
- docker exec -it 容器id /bin/bash '进入对应id的容器,退出时不会停止容器'
- docker export 容器id > white.tar '导出本地容器到white.tar'
- cat docker/white.tar | docker import -test/ubuntu:v1.0 '导入white为镜像,再导入到ubuntu镜像中'
- docker import http://white.com/white.tar test/ubuntu '指定url导入'
- docker rm -f 容器id '删除容器'
- docker port 容器id/name '查看容器端口映射情况'
- docker logs -f 容器id/name '查看容器的输出'
- docker network create -d bridge network_test '创建Docker网络'
- docker run -itd --name testANDnet --network network_test ubuntu /bin.bash '运行容器连接网络,设置两个容器则会建立互联关系'
- -i 交互式操作
- -t 终端
- -d 容器后台运行,不进入容器
- -P 容器端口随机映射主机端口,主机端口随机
- -p 容器端口指定映射主机端口,主机端口自定
- attach 进入容器,退出容器时容器停止
- exec (推荐)进入容器,退出容器时容器不会停止