Docker:小白入门自我记录(三)

博客介绍了Docker相关知识。Dockerfile包含注释和指令两种内容,构建后会删除中间容器,可通过--no-chach不使用构建缓存。Docker网络由虚拟网桥提供服务,Linux中为docker0,Windows为DockerNAT,可使用bridge-util管理网桥,容器互联有相关配置,现推荐用docker network。

Dockerfile相关

dockerfile含有两种内容

  1. “#注释”:注释以#开始
  2. “INSTRUCTIONS”:指令以大写字母开始
#我是注释

#FROM必须是第一条,是基础镜像
FROM <image>
FROM <image>:<tag>

#指定作者和信息
MAINTAINER <name>

#当前镜像构建时运行的命令
RUN <command>  (shell)    既    /bin/sh -c command
RUN <exec>
如:
    RUN ["executable","parameter1",...]
    RUN ["/bin/bash","-c","echo Hello!"]

#暴露端口,但run是还是需要手动打开
EXPOSE <port> [<port>]

#镜像运行后使用的命令,会被docker run [命令] 覆盖
#它用来指定容器运行后的默认操作
CMD <command>  (shell)    既    /bin/sh -c command
CMD <exec>
如:
    CMD ["executable","parameter1",...]
    CMD ["/bin/bash","-c","echo Hello!"]
CMD ["parameter1","parametre2",...]    常与 entrypoint搭配使用

#和CMD差不多,就是不会被覆盖23333.
#可以配合CMD,在run时更改参数
ENTRYPOINT

#有空格的话加""
#ADD多个解压tar
ADD <sre> <dest>
COPY <sre> <dest>

#卷:在多个容器间共享
VOLUME["/data"]

#制定工作目录,建议使用绝对路径
WORKDIR /xxx/xxx

#环境变量
ENV <key> <value>
ENV <key>=<value>

#指定用户
USER user/uid/gid
USER xxx:group

#容器被变成镜像,作为镜像创建容器时会触发指令
ONBUILDE [instruction]

build后会删除中间容器,但不会删除中间镜像

不使用构建缓存:--no-chach


Docker网络相关

由虚拟网桥提供网络服务,数据链路层的玩意之列的,不是很懂emmm

linux中:docker0

windows:DockerNAT

相当于虚拟网卡 就是虚拟网卡

linux中用 bridge-util 来管理网桥

 

容器间互联:

--icc=true 是否可以互联的字段

容器间默认是在一个局域网内,使用ip地址非常不可靠会随这容器重启而改变

run --link=[容器名ContainrtName]:[别名Alias]

使用例子:

 

上述方法已过时,现使用docker network,可参照这个

跨主机连接和包转发啥的,暂时用不到,不学了~

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值