转载请注明出处!!!!

1.Docker 基本指令

下载镜像 docker pull 镜像名称:版本
查看已有镜像 docker images
查看已有容器 docker ps
启动docker docker run -d (后台运行) -p 8080(宿主):8080(容器) 端口映射 -e(环境变量) MYSQL_DATABASE=workdb -e MYSQL_ROOT_PASSWORD=123456 镜像名(镜像id)
关闭 docker stop 容器id
进入docker docker exec -it(i交互式t虚拟控制台) 容器id bash
退出容器 exit
删除容器 docker rm -f 容器id

2.Dockerfile

Dok'ce'rfile 样例:

FROM XXX/jdk:8
MAINTAINER docker_user
ENV JAVA_HOME /user/local/java
ADD apache-tomcat-8.0.32.tar.gz /usr/local/
RUN mv apache-tomcat-8.0.32 tomcat8
EXPOSE 8080
RUN chmod u+x /usr/local/tomcat8/bin/*.sh
CMD /usr/local/tomcat8/bin/catalina.sh start

  

Dockerfile 分为四部分

  1)基础镜像信息

  2)维护者信息

  3)镜像操作指令

  4)容器启动时的指令

Dockerfile 指令

FROM   <image> 或者 FROM <image>:<tag>  指定镜像

  如果需要创建多个镜像时,可以使用多个FROM 指令

MAINTAINER<name>

  指定维护者信息,即 作者

ADD <地址><docker绝对路径>

  复制宿主机中文件到docker中的指定目录 多个使用多次ADD

EXPOSE<port>[<port>...]

  docker 服务暴露的端口  启动时可通过-p映射

ENV <环境变量名称> <环境变量值>

  配置docker中的环境变量  后续RUN 会使用  多个使用多次ENV

CMD

  指定启动容器时执行的命令,每个Dokcerfile 只能执行一条 如果写了多条只有最后一条会被执行

  如果用户启动docker时指定了运行的命令,则会覆盖CMD命令

RUN <command>

  指定在当前镜像的基础上执行指定命令,并提交为新的镜像   命令较长时用  \   来换行

构建步骤

1.vim Dockerfile

2.在Dockerfile所在目录下执行

  

docker build <name> .

3.build 成功后会返回镜像id

可以通过docker image 查看

通过 docker run 运行镜像

  

docker 从入门到精通的更多相关文章

  1. docker从入门到精通再到放弃

    docker说明 docker三大功能:构建(build).运输(ship).运行(run),只需要记下这三大功能就可以了 1.docker入门 docker安装及配置 a.docker源配置 cur ...

  2. 《OD Docker实战》Docker从入门到精通

    一. 安装Docker http://wiki.jikexueyuan.com/project/docker-technology-and-combat/ https://mos.meituan.co ...

  3. Docker从入门到精通(一)——初识

    1.Docker 是什么? Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容 ...

  4. Docker从入门到精通(二)——安装Docker

    通过上面文章,我们大概知道了什么是Docker,但那都是文字功夫,具体想要理解,还得实操,于是这篇文章带着大家来手动安装Docker. 1.官方教程 https://docs.docker.com/e ...

  5. Docker从入门到精通(三)——概念与执行流程

    前面我们大概介绍了docker是什么以及如何安装docker,但是对里面出现的一些名词,可能大家还不熟悉,这篇文章就来为大家解惑. 1.容器化平台 Docker 是提供应用打包,部署与运行应用的容器化 ...

  6. Docker从入门到精通(四)——常用命令

    话不多说,本篇文章给大家介绍 docker 的常用命令,基本上会覆盖我们日常使用的命令. 1.万能帮助命令 docker 命令 --help 假设你想用某个命令,但是又不知道该命令的一些参数怎么用,这 ...

  7. Docker从入门到精通(五)——Dockerfile

    Dockerfile 简单来说就是一个包含用于组合镜像的命令的文本文档,Docker 通过读取 Dockerfile 中的指令就可以按步骤生成镜像,那么在制作镜像之前,我们先了解一下镜像的原理. 1. ...

  8. Docker从入门到精通(六)——容器通信

    想要变成 Docker 的高阶玩家,搞懂 Docker 的容器通信是必不可少的. 1.需求 通常一个 Web 项目上线,我们会把开发完成的服务部署在Tomcat 服务器里面,然后需要的持久化数据会存放 ...

  9. Docker从入门到精通(七)——容器数据共享

    什么是容器数据共享?简单来说就是容器与容器之间数据共享,容器与宿主机数据共享. 1.为什么需要数据共享? ①.数据持久化 比如我们有一个MySQL集群,通过容器启动,那么项目运行过程中的数据是保存在容 ...

随机推荐

  1. 主成分分析_PCA解释

    粘贴自:http://blog.codinglabs.org/articles/pca-tutorial.html 数据的向量表示及降维问题 向量的表示及基变换 协方差矩阵及优化目标 协方差矩阵对角化 ...

  2. k8s常用命令演示

    kubectl run --image=xxx name_xx --port kubectl run --image=nginx nginx-app --port=80 kubectl expose ...

  3. MySQL_写锁_lock tables tableName write

    pre.环境准备 1.建立两个表S,T,并插入一些数据 --创建表S create table S(d int) engine=innodb; ); --创建表T create table T(c i ...

  4. Springboot自定义异常处理

    1.自定义异常类 import lombok.Data; @Data public class UserException extends RuntimeException { private Lon ...

  5. SHELL:多文件的重命名和移动

    rename find mv #实现查找png 和 jpeg文件 #!/bin/bash #file name: rename.sh #use: rename.jpg  and .png files ...

  6. mysql的order by注入

    最近在做一些漏洞盒子后台项目的总结,在盒子众多众测项目中,注入类的漏洞占比一直较大.其中Order By注入型的漏洞也占挺大一部分比例,这类漏洞也是白帽子乐意提交的类型(奖金高.被过滤概览小).今天给 ...

  7. linux内核开发入门学习

    1. 目录结构 内核源代码下载 https://www.kernel.org arch目录 arch是architecture的缩写. 内核所支持的每种CPU体系,在该目录下都有对应的子目录.每个CP ...

  8. Spring AOP中 pointcut expression表达式解析

    任意公共方法的执行: execution(public * *(..)) 任何一个以“set”开始的方法的执行: execution(* set*(..)) AccountService 接口的任意方 ...

  9. Intelij idea 版本控制工具窗口

    1. 在菜单栏vcs中启用版本控制 2. 然后调出工具窗口,view-tools window-version control

  10. ie浏览器部分图片不显示

    前言 前几天做项目时,发现一个奇怪的现象,从后台获取的图片,在IE浏览器端,有一部分不会显示,仔细研究发现是图片本来是.jpg格式,后台传过来的图片后缀已经被改成了.png格式或者其它格式导致IE浏览 ...