镜像名字
1. 由2部分组成:repository : tag
2. 如果docker build时没有指定,tag默认lastest
3. 指定:docker build -t <name>:<tag name>
4. 一个repository可能有多个tag
docker tag ubuntu_vi ubutnut:1
仓库
1. Docker hub(docker公司)
网址:https://hub.docker.com
登录:docker login
下载:docker pull <镜像名>
2. Daocloud 国内仓库时速云
镜像保存位置
从仓库下载的镜像保存在root dir/storage driver的layers文件夹
ubuntu 默认使用aufs驱动,存放位置在/var/lib/docker/aufs/layers
存储驱动程序:aufs/devicemapper/overlay/overlay/zfs
1. 导出镜像
save 镜像路径 -o xxx.tar
2. 导入镜像到本地镜像库
load -i xxx.tar
提交仓库镜像
1. 构建dockerfile(类似shell脚本,依次运行指令自动构建镜像)
FROM ubuntu:16.04 # 基础镜像
LABEL maintainer "" # 作者
RUN apt-get update -y # 更新软件包列表
COPY ./app /app # 复制当前目录的app文件到容器的app目录
EXPOSE 8080 # 容器暴露端口
WORKDIR /app # 设置容器运行的工作目录
RUN pip3 install -r requirements.txt # 运行pip安装requirements中的依赖包
ENTRYPOINT ["python3"] # 设置容器的默认启动应用
CMD ["app.py"] # 运行脚本
2. 构建镜像
docker build
默认情况下会在当前目录下找dockerfile,可以通过-f指定dockerfile文件,-t <tag> 打上标签,标记镜像名称
3. 查看本地镜像
docker image
4. 运行镜像
docker run -d -p 8080:80 xxxxx # 绑定宿主机端口8080
5. 杀死容器
docker kill
6. 将镜像提交到公共库
a. 注册docker账号
b. 登录docker hub服务器:docker login
c. 新建镜像仓库
d. 给镜像打标签:docker tag 镜像ID 账号名/镜像库名字:镜像版本
e. 提交镜像:docker push 标签名