Docker笔记
- Docker是什么
Docker 是一个开源的应用容器引擎。可以将应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上,包括windows的WSL。
- 配置环境迁移
各种依赖包用Docker打包后,可以不用再重新挨个下载了。
Docker使用
1.容器
功能 | 命令 | 描述 |
---|---|---|
查看容器 | docker ps [-a] | 显示运行 [-a 所有] 容器 |
运行容器 | docker run [option] [image] [cmd] | 在镜像image中运行命令cmd |
option | -i | 允许对容器STDIN进行交互 |
-t | 在新容器中指定一个伪终端/终端 | |
-d | 容器后台运行 | |
image | 指定镜像,镜像使用见下方 | |
cmd | /bin/bash 表示执行终端; /bin/echo "hello world"显示hello world | 执行命令 |
示例 | docker run -i -t ubuntu:15.10 /bin/bash | |
后台运行 | 使用以下方法进入容器 | |
进入容器 | docker attach <容器ID> | exit会停止容器 |
docker exec -it <容器ID> /bin/bash | exit不会停止容器 | |
退出容器 | exit | |
停止容器 | docker stop <容器ID> | |
重启容器 | docker restart <容器ID> | |
导出容器 | docker export <容器ID> filename.tar | |
导入容器 | cat docker/filename.tar | docker import - test/ubuntu:v1 | |
docker import http://example.com/exampleimage.tgz example/imagerepo | ||
删除容器 | docker rm -f <容器ID> |
2.镜像
功能 | 命令 | 描述 |
---|---|---|
查看镜像 | docker images | 显示本地所有镜像 |
REPOSITORY | 镜像名称 | |
TAG | 标签 | |
IMAGE ID | 镜像ID | |
CREATED | 创建时间 | |
SIZE | 大小 | |
指定镜像 | REPOSITORY:TAG | 一个仓库可以有多个标签;例如不同版本ubuntu |
获取镜像 | docker pull REP:TAG (eg: ubuntu:13.10) | 下载镜像 |
查找镜像 | docker search [name] | 或者登录hub网址 search后用pull下载 |
删除镜像 | docker rmi [name] | |
构建镜像 | docker build -t <镜像名> <Dockerfile所在目录> | |
添加TAG | docker tag <镜像ID> <新标签> |
3.Dockerfile
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
FROM [img]
基于img镜像
RUN [cmd]
执行命令,例如
apt-get install pip
pip install numpy
其他指令类似,可参考菜鸟教程
有了dockerfile,使用docker build 即可配置docker环境