zoukankan      html  css  js  c++  java
  • Docker入坑指南之RUN

    总有一些场景,我们需要自己制作一个镜像,可以快速还原环境,又不想被其他因素干扰镜像的纯净,这个时候,就可以选择Docker了,启动便捷,镜像还原很快捷,除了上手不容易。

    最近入坑研究了一番,小有心得,故写一篇杂文,记录自己的踩坑经历。

    安装Docker的过程可以参考其他前辈的文章,不再赘述,从实战角度说,如何构建一个自用的Docker镜像。

    首选说一下Docker的几个名词,仓库是管理镜像的,容器是镜像启动后的,镜像就是最干净的环境,镜像启动之后变成容器。

    docker的run是启动镜像的介质,启动之后的镜像,可以跟各种参数,比如加载镜像内进程,常见比如 windows镜像的cmd或linux镜像的/bin/bash

    这个时候就可以使用docker attach 容器ID(或者容器名)

    docker run之后,会生成一长串的看上去像hash字符串的东西,多是长的字符串,可以直接把那个当容器ID使用,也可以docker ps -a获取短容器ID,如果启动的参数有--name的话,也可以用容器别名

    示例如下

    docker run -itd --name linux linux /bin/bash

    这个参数解析如下

    docker -itd --name linux(容器别名) linux(镜像名) /bin/bash(附加参数)

    参数-d是后台运行容器,并返回容器ID

    参数-i是以交互模式运行容器,通常与 -t 同时使用

    参数-t是为容器重新分配一个伪输入终端,通常与 -i 同时使用

    因为容器经常是需要对外服务给其他容器使用,或者隐射出来使用,所以还有几种网络相关参数

    参数-p是端口映射,格式为:主机(宿主)端口:容器端口

    参数--link添加链接到另一个容器,经常会配合-h,容器内通过别名互访,也可以和--name的别名访问

    参数--expose=开放一个端口或一组端口

    启动的参数可以跟上tag标志

    比如有两个镜像 mysql:laster mysql:5.7

    默认启动mysql是mysql:laster,如果我们要启动5.7的就

    docker run -itd mysql mysql:5.7 /bin/bash
  • 相关阅读:
    Python踩坑总结
    you-get下载酷我音乐付费歌曲
    Windows下python2和python3共存时pip失效(pip找不到)的解决办法
    正负混合排序,正数在前,负数在后
    用Python做窗口化滚动点名系统
    sublime3自定义快捷键运行python,支持input()函数
    python中字典,没键加键,有键操作其键对应的值,的思想
    python可变容器类型做函数参数的坑
    Ascii码 unicode码 utf-8编码 gbk编码的区别
    python文件操作各种模式和常用方法总结r r+ rb r+b
  • 原文地址:https://www.cnblogs.com/NCoreCoder/p/9938545.html
Copyright © 2011-2022 走看看