DOCKER常用命令及参数

  DOCKER镜像管理命令:

    检索:docker search image_name

    下载:docker pull image_namge

    查看本地镜像:docker images

    删除:docker rmi image_id

  DOCKER容器命令:

    运行:

      以守护进程方式启动:docker run --name container_name -d  image_name

      以交互方式启动,并进行命令行界面:docker run --name contain_name -i -t image_name

        ctrl-z退出当前命令行,docker attach contain_name再进入

        --link=container_name or id:name 使用这个选项在你运行一个容器时,可以在此容器的/etc/hosts文件中增加一个额外的name主机名,这个名字为container_name的容器的IP地址的别名。这使得新容器的内部进程可以访问主机名为name的容器而不用知道它的Ip

    查看:docker ps

        -a:查看所有的容器包括已经停止运行的

    停止:docker stop contianer_name/contain_id

    启动:docker start container_name/container_id

    端口映射:docker run -d -p 6378:6379 --name port-redis redis

    删除:docker rm container_id/container_name

DOCKERFILE:创建自定义image,包含用户指定的软件,依赖等

  当前目录下包含dockerfile,使用命令build来创建新的image,命名为edwardsbean/centos6-1.7

    docker build -t edwardsbean/centos6-1.7

  dockerfile的关键字

    FROM:基于哪个镜像

    RUN:安装软件

    MAINTAINER:镜像创建者

    CMD:container启动时执行的命令,但一个dockerfile中只能有一个CMD命令,多条执行最后的一条

    ENTRYPOINT:同CMD,但是如dockerfile中有CMD ["echo", "hello world"]和ENTRYPOINT ["echo", "hello world"]时,执行docker run image_name dir,前一个会输出目录信息,后一个是hello world dir,和CMD用于执行初始化脚本

    USER:使用哪个用户跑

    EXPOSE:开启的端口

    ENV:环境变量(ENV <key> <VALUE>)

    ADD:将文件拷贝到image的文件系统中,本地,URL( ADD <src> <dst>)

    COPY:本地文件首先用,不解压(COPY <src> <dst>)

    VOLUME:将本地的文件或其他container文件挂载到container中,VOLUME mountpoint

    WORKDIR:切换目录,对RUN CMD ENTRYPOINT生效

FROM java:8-jre
MAINTAINER m242565210 ADD ./apache-tomcat-8.5.23.tar.gz /opt/
ENV TOMCAT_HOME /opt/apache-tomcat-8.5.23
ENV PATH $PATH:$TOMCAT_HOME/bin EXPOSE 8080 WORKDIR /opt/apache-tomcat-8.5.23/bin
ENTRYPOINT sh ./startup.sh && \
tail -f /opt/apache-tomcat-8.5.23/logs/catalina.out

  Docker容器后台运行,就必须有一个前台进程。容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的

COMPOSE的命令

  build(构建或重构服务),help,kill,logs,port,ps,pull,restart,rm(删除停止的容器),run(运行一个一次性命令),start,stop,up

DOCKER 开发学习记录的更多相关文章

  1. 寒假安卓app开发学习记录(3)

    今天终于开始正式的安卓软件开发学习.开始用了大约一个小时的时间把创建第一个软件的学习视频观看了一下.跟着视频一边学习一边操作. 首先是创建项目,创建的过程和之前创建Java项目的过程相似.先给app起 ...

  2. 微信小程序开发学习记录

    两天撸了一遍小程序的文档,跟网页相似,个人感觉是简化版.但是因为开放了很多微信自带的接口又使得部分功能开发起来相对方便 思维导图如下: 目前我的理解大概是这么个逻辑,以后深入学习后可能会有更改 跟着大 ...

  3. 寒假安卓app开发学习记录(1)

    今天是安卓软件开发的第一天.虽然之前有了对javaweb的学习,但是对基于安卓的软件开发还是一无所知.所以,第一步就是寻找学习资源,从慕课网上还有菜鸟教程上都找到了对应的教程.然后就开始了开发的第一步 ...

  4. iOS开发学习记录【整理】

    ◆ 开发环境基于 MacBook / Mac OS 10.10 / Xcode 6.1 / iOS 8 1.关于@property 在 .h 里声明了@property之后,默认 .m 不需要写@sy ...

  5. MyBatis开发学习记录

    使用MyBatis时主要是完成POJO和SQL的映射规则 MyBatis基本构成: SqlSessionFactoryBuilder SqlSessionFactory SqlSession SqlM ...

  6. python微信公众号开发学习记录

    网上有很多微信公众号的开发教程,但是都是好几年前的了,而且很多都是抄袭其他人的,内容几乎一模一样.真的无语了.只好自己总结一下开发的一些简单流程. 一先去注册个微信公众号,这个就不详细说了, 二登录后 ...

  7. Xposed模块开发学习记录

    Xposed模块相关API可以参考在线文档: https://api.xposed.info/reference/packages.html     入门教程可以参考: https://github. ...

  8. 寒假安卓app开发学习记录(7)

    今天学习了Intent的基本用法.Intent是什么?Intent在Android中的核心作用就是“跳转”(Android中的跳转机制),同时可以携带必要的信息,将Intent作为一个信息桥梁.最常用 ...

  9. 寒假安卓app开发学习记录(5)

    第一个项目运行成功! 今天主要是看视频 ,学习Android项目的目录结构.大概学习了一个小时左右.然后在网上学习和对比eclipse上的目录,了解每个目录的功能是什么. 了解了Android项目的目 ...

随机推荐

  1. Chef 自动化运维:开始“烹饪”

    在 Chef Workstation 上创建了一个 cookbook 之后,我们执行以下命令来进行测试: chef-client --local-mode --override-runlist fir ...

  2. 【JMeter】选项-函数助手对话框应用举例

    String date="${__javaScript((new Date()).getFullYear()+'-'+((new Date()).getMonth()+1)+'-'+(new ...

  3. Java IO学习要点导图

    Java IO的一些基础知识: 导图源文件保存地址:https://github.com/wanghaoxi3000/xmind

  4. iOS 友盟推送,应用内推送启动图推送闪动黑屏,插屏推送方法报错

    以前都是用的极光推送,应公司需求要求使用友盟推送,为了以后是有分享都适用,,, 友盟推送文档,下载demo 感觉比极光用着要简单顺手 一切就绪后,开始发送消息测试,,,,,搞了半天没有发过来消息 原来 ...

  5. 服务器端语言go之开篇分享

    由于之前看过其他脚本语言,此时看服务器端语言go语法时也短短用了半天的时间,如图1所示,是个人学习go语法的目录截图,学习网址:菜鸟网站,为了个人方便学习和记忆,因此写下本篇文章,在本篇文章里我主要是 ...

  6. [array] leetcode - 34. Search for a Range - Medium

    leetcode - 34. Search for a Range - Medium descrition Given an array of integers sorted in ascending ...

  7. Java I/O---序列化接口Serializable

    1.JDK API 中关于Serializable的描述 public interface Serializable 类通过实现 java.io.Serializable 接口以启用其序列化功能.未实 ...

  8. php-自动过滤、自动填充、自动验证

    最近又学到了一些新技巧,和大家分享下. 第一.当一个表单有很大内容时,我们在表单处理页面接收这些表单的值的时候就会重复 接收,于是就有了自动过滤的解决之法(核心就是把数据表里需要的字段接收) 首先:我 ...

  9. OpenStack运维(二):OpenStack计算节点的故障和维护

    1.计划中的维护 举例:需要升级某一个计算节点的硬件配置,需要将计算节点上的虚拟机迁移后在对其进行操作,分为两种情况. 1.1 云系统使用了共享存储 a. 获取虚拟机列表:nova list --ho ...

  10. Anti-pattern/反模式

      常见的与"直觉"相背离的anti-pattern产生的实际原因是没有深入.全面地考虑问题,即只关注到自己关心的方面,忽略了其他重要的.起相反作用的因素. 所以这个"直 ...