- 浏览: 139560 次
文章分类
最新评论
-
wangyudong:
很有帮助的代码实例,测试Spring Boot REST AP ...
1、springboot入门案例helloworld与集成hibernate -
wangyudong:
学习了,的确是一个非常好的Spring boot实例,很快就写 ...
1、springboot入门案例helloworld与集成hibernate
一、什么是Docker镜像
是一种使用联合加载技术实现的重叠的只读文件系统
是容器的基石。
使用docker info命令查看docker使用的存储驱动和存储位置
ls -l /var/lib/docker/aufs
ams文件夹下保存镜像文件
二、查看和删除镜像
1、列出镜像
docker images [optsions] [repository]
-a , --all=false 显示所有镜像
-f , --filter=[] 在显示时的过滤条件
--no-trunc=false ID是否截断,默认截断
-q, --quiet=false 只显示镜像的惟一ID
repository 仓库,一个仓库包含的是一系列关联的镜像
tag 镜像标签,一个镜像可以对应多个标签
2、查看镜像的详细信息
docker inspect [options] container|image [container|image]
docker inspect 仓库名:tag名
3、删除镜像
docker rmi [options] image [image...]
-f , --force=false 会强制删除镜像
--no-prune=false 会保留被删除镜像标签的父镜像
docker rmi ubuntu:latest
一次删除多个镜像 docker rmi ubuntu:latest ubuntu2:latest2 ......
删除所有镜像 docker rmi $(docker images -q ubuntu) ,会删除ubuntu仓库中的所有镜像
三、如何获取和推送镜像
1、查找镜像
a)docker hub https://registry.hub.docker.com
需先注册账号
b)docker search [options] term
--automated=false 自动化选项,只会显示自动化构建的镜像
--no-trunc=false 选择了true会以截断的方式输出
-s , --stars=0 限制显示结果的最低星级
2、拉取镜像
docker pull ubuntu:14.04 速度非常慢
使用 --registry-mirror 选项,使用国内的docker仓库镜像服务器
1、修改 /etc/default/docker
2、添加:DOCKER_OPTS = "--registry-mirror=https://www.daocloud.io"
DOCKER_OPTS="$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io"
3、推送镜像
docker push不会把镜像整个提交上去,只会把修改的部分提交上去
四、构建镜像
保存对容器的修改,并再次使用
自定义镜像的能力
以软件的形式打包并分发服务及其运行环境
1、docker commit 通过容器构建
docker commit [options] container [repository[:tag]]
-a, --author="" 指定镜像的作者
-m,--message="" 记录镜像构建的信息
-p,--pause=true 指示commit不暂停正在执行的容器
docker run -i -t -p 80 --name commit_test ubuntu /bin/bash
以容器web,创建一个镜像,名字为nginx_web,仓库myrep01
docker commit -a 'chentian' -m 'nginx' web myrep01/nginx_web
以nginx_web镜像启动容器
2、docker build 通过dockerfile文件构建
先编写dockerfile文件
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get update
RUN apt-get install -y nginx
EXPOSE 80
docker build -t='myrep01/df_test1' .
-t 设置创建镜像的名字
path : dockerfile文件所在目录
docker images查看已存在的镜像
以创建的df_test1镜像创建docker容器
docker run -d --name nginx_df1 -p 80 "myrep01/df_test1" nginx -g "daemon off;"
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get update
RUN apt-get install -y nginx
EXPOSE 80
1、FROM指令 用来指定镜像
FROM指令格式 a)FROM <image> b)FROM <image>:<tag>
必须是已经存在的镜像,后序指令都会基于这个镜像运行。帮叫基础镜像
必须是第一条非注释指令
2、MAINTAINER <name> 指定镜像的作者信息,包含镜像的所有者和联系信息
3、RUN 用来指定当前镜像中运行的命令
有两种指令模式
a) RUN <command> (shell模式)
该模式下执行命令 :
b)RUN [ "executable","param1","param2"] (exec模式)
该模式下可指定其它形式的shell执行指令
docker build -t="myrep01/df_test1" path 查看构建过程
4、EXPOSE 用来指定运行该镜像的容器使用的端口,它可以指定一个或多个端口,也可以多次使用EXPOSE
EXPOSE <port> [<port>....]
容器运行时,仍需要手动指定映射端口
5、CMD 用来提供容器运行的默认命令,与RUN命令类似,都是用来执行指令,但RUN指令中的命令是在镜像构建
过程中运行的,而CMD指定的指令是在容器运行时运行的。当我们使用docker run指定了容器运行的命令时,
CMD命令会被覆盖,即CMD只是指定容器启动默认执行的命令。
CMD指令的模式
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get install -y nginx
EXPOSE 80
docker build -t="myrep01/df_test2" .
docker run -p 80 --name="cmd_test1" -d myrep01/df_test2
6、ENTRYPOINT命令 与CMD类似,惟一不同是不会被docker run指定的命令覆盖,如果要覆盖需要在docker run中指定
docker run --entrypoint覆盖
构建缓存
docker镜像与容器关系总结:
1、先是根据镜像创建一个容器;
2、容器其实相当于一个微型虚拟机,可以在里面安装软件和部署应用
3、容器可以被整个打包,提交成一个镜像;
4、创建一个新的镜像可以基于一个已经存在的镜像
是一种使用联合加载技术实现的重叠的只读文件系统
是容器的基石。
使用docker info命令查看docker使用的存储驱动和存储位置
ls -l /var/lib/docker/aufs
ams文件夹下保存镜像文件
二、查看和删除镜像
1、列出镜像
docker images [optsions] [repository]
-a , --all=false 显示所有镜像
-f , --filter=[] 在显示时的过滤条件
--no-trunc=false ID是否截断,默认截断
-q, --quiet=false 只显示镜像的惟一ID
repository 仓库,一个仓库包含的是一系列关联的镜像
tag 镜像标签,一个镜像可以对应多个标签
2、查看镜像的详细信息
docker inspect [options] container|image [container|image]
docker inspect 仓库名:tag名
3、删除镜像
docker rmi [options] image [image...]
-f , --force=false 会强制删除镜像
--no-prune=false 会保留被删除镜像标签的父镜像
docker rmi ubuntu:latest
一次删除多个镜像 docker rmi ubuntu:latest ubuntu2:latest2 ......
删除所有镜像 docker rmi $(docker images -q ubuntu) ,会删除ubuntu仓库中的所有镜像
三、如何获取和推送镜像
1、查找镜像
a)docker hub https://registry.hub.docker.com
需先注册账号
b)docker search [options] term
--automated=false 自动化选项,只会显示自动化构建的镜像
--no-trunc=false 选择了true会以截断的方式输出
-s , --stars=0 限制显示结果的最低星级
2、拉取镜像
docker pull ubuntu:14.04 速度非常慢
使用 --registry-mirror 选项,使用国内的docker仓库镜像服务器
1、修改 /etc/default/docker
2、添加:DOCKER_OPTS = "--registry-mirror=https://www.daocloud.io"
DOCKER_OPTS="$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io"
3、推送镜像
docker push不会把镜像整个提交上去,只会把修改的部分提交上去
四、构建镜像
保存对容器的修改,并再次使用
自定义镜像的能力
以软件的形式打包并分发服务及其运行环境
1、docker commit 通过容器构建
docker commit [options] container [repository[:tag]]
-a, --author="" 指定镜像的作者
-m,--message="" 记录镜像构建的信息
-p,--pause=true 指示commit不暂停正在执行的容器
docker run -i -t -p 80 --name commit_test ubuntu /bin/bash
以容器web,创建一个镜像,名字为nginx_web,仓库myrep01
docker commit -a 'chentian' -m 'nginx' web myrep01/nginx_web
以nginx_web镜像启动容器
2、docker build 通过dockerfile文件构建
先编写dockerfile文件
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get update
RUN apt-get install -y nginx
EXPOSE 80
docker build -t='myrep01/df_test1' .
-t 设置创建镜像的名字
path : dockerfile文件所在目录
docker images查看已存在的镜像
以创建的df_test1镜像创建docker容器
docker run -d --name nginx_df1 -p 80 "myrep01/df_test1" nginx -g "daemon off;"
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get update
RUN apt-get install -y nginx
EXPOSE 80
1、FROM指令 用来指定镜像
FROM指令格式 a)FROM <image> b)FROM <image>:<tag>
必须是已经存在的镜像,后序指令都会基于这个镜像运行。帮叫基础镜像
必须是第一条非注释指令
2、MAINTAINER <name> 指定镜像的作者信息,包含镜像的所有者和联系信息
3、RUN 用来指定当前镜像中运行的命令
有两种指令模式
a) RUN <command> (shell模式)
该模式下执行命令 :
b)RUN [ "executable","param1","param2"] (exec模式)
该模式下可指定其它形式的shell执行指令
docker build -t="myrep01/df_test1" path 查看构建过程
4、EXPOSE 用来指定运行该镜像的容器使用的端口,它可以指定一个或多个端口,也可以多次使用EXPOSE
EXPOSE <port> [<port>....]
容器运行时,仍需要手动指定映射端口
5、CMD 用来提供容器运行的默认命令,与RUN命令类似,都是用来执行指令,但RUN指令中的命令是在镜像构建
过程中运行的,而CMD指定的指令是在容器运行时运行的。当我们使用docker run指定了容器运行的命令时,
CMD命令会被覆盖,即CMD只是指定容器启动默认执行的命令。
CMD指令的模式
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER chentian114 "chentian114@sina.com"
RUN apt-get install -y nginx
EXPOSE 80
docker build -t="myrep01/df_test2" .
docker run -p 80 --name="cmd_test1" -d myrep01/df_test2
6、ENTRYPOINT命令 与CMD类似,惟一不同是不会被docker run指定的命令覆盖,如果要覆盖需要在docker run中指定
docker run --entrypoint覆盖
构建缓存
docker镜像与容器关系总结:
1、先是根据镜像创建一个容器;
2、容器其实相当于一个微型虚拟机,可以在里面安装软件和部署应用
3、容器可以被整个打包,提交成一个镜像;
4、创建一个新的镜像可以基于一个已经存在的镜像
发表评论
-
tomcat学习一(简单web服务器示例)
2016-09-20 17:14 511Request.java package com.chen ... -
10、Docker私有仓库搭建
2016-05-04 15:10 811和Mavan的管理一样,Dockers不仅提供了一个中央仓库, ... -
8、在docker上部署简单javaweb应用
2016-04-24 19:12 9121、创建容器javaweb1,并添加数据卷便于将安装文件共享到 ... -
7、Docker容器的数据管理
2016-04-24 17:56 1178一、Docker容器的数据卷 ... -
6、Docker容器的网络连接
2016-04-24 17:54 1719一、Docker容器的网络基础 dock ... -
5、Docker客户端和守护进程
2016-04-22 09:04 1029一、Docker的C/S模式 ... -
3、Docker容器常用命令与在容器中部署静态网站
2016-04-22 09:04 916一、容器的基本操作 ... -
2、Docker简介及docker组成部分
2016-04-22 09:03 18081、Docker提供了一个容器 ... -
1、Ubuntu14.04安装docker
2016-04-22 09:02 721一、安装前检查 1、内核版本 uname - ... -
6、java连接redis集群
2016-04-18 18:26 26571、使用Jedis 连接集群会报 MOVED错误 packag ... -
redis集群搭建
2016-04-18 16:15 600redis-cli -h 127.0.0.1 -p 6749 ... -
ubuntu14.04卸载redis并手动安装redis-3.0
2016-04-18 16:14 11791、ubuntu 卸载redis 1)卸载软件 ... -
redis五种数据类型常用基本命令总结
2016-04-14 19:00 761redis-cli 启动redis客户端,连接到redis服务 ... -
java连接远程服务器redis常遇问题
2016-04-14 18:58 32771、先在本地CMD命令中ping IP地址,网络是否正常 2、 ... -
redis虚拟机环境搭建与安装redis
2016-04-12 09:14 1788下载VMware 下载ubuntu14.iso 在VMware ... -
dubbo入门案例
2016-04-07 19:47 1242windows安装zookeeper 把下载的zookeepe ... -
webservice cxf简单案例
2016-03-30 18:44 721cxf简单java项目案例 IHelloWorld.java ... -
spring mvc教程视频
2016-01-18 17:29 8191. 韩顺平 Spring视频教程 http://www.yu ... -
Redis与Memcached比较
2016-01-13 11:01 828作为内存数据缓冲 ... -
Redis原理与简述
2016-01-13 10:46 12684Redis是一个开源的key-value存储系统。 ...
相关推荐
基于alpine系统构建docker镜像,实现可配置和易于管理的docker镜像。 项目简介 提供非常小的docker镜像。 提供易于配置的docker镜像。 提供非常稳定的docker镜像。 使用docker镜像快速启用微服务架构。 使用docker...
mysql 5.7 docker 镜像 离线安装包 mysql 5.7 docker 镜像 离线安装包 mysql 5.7 docker 镜像 离线安装包 mysql 5.7 docker 镜像 离线安装包 mysql 5.7 docker 镜像 离线安装包 mysql 5.7 docker 镜像 离线安装包
mysql8 docker 镜像 下载后直接导入docker load -i mysql.tar
rabbitmq docker镜像压缩包
ubuntu20.04的docker镜像文件
nginx arm版本docker镜像文件
kafka的docker镜像包含了kafka,zookeeper 和kafkamanager,可以通过docker 来load 安装
mysql 8.4.2 docker镜像包,使用的linux8
docker镜像mysql5.7.24
docker 镜像资源共享
Elasticsearch 的 Docker 镜像
ubuntu24.04的docker镜像
这个手册是提供给大家学习TongWeb制作docker镜像!TongWeb打docker镜像.docx,
docker镜像文件tomcat 7.0.78
docker镜像安装包
Node.js的官方Docker镜像
Elasticsearch Docker镜像方便下载使用
mysql5.7 arm 64版本 docker 镜像包 直接在docker下执行 生成镜像包 docker load < mysql5.tar
redis:7.0.8 docker镜像