欢迎来到代码驿站!

当前位置:首页 >

dockerfile echo指定文件多行文本的方法实现

时间:2021-08-15 09:34:14|栏目:|点击:

在dockerfile中给指定文件添加多行,注意echo后面的"$"符号

[root@master01 ovn-node]# cat dockerfile 
FROM ovn-node:2.11.2

# sed 删除指定行
RUN sed -i '53d' /root/start-ovs.sh

# 用echo添加多行内容
RUN echo $'OVERLAY_ENDPOINT=`hostname -i`\n\
ovs-vsctl set open . external-ids:ovn-encap-ip=${OVERLAY_ENDPOINT}\n\
\n\
# create a bridge , then mapping outside port\n\
ovs-vsctl add-br br-ex\n\
ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=phyNet:br-ex\n\
\n\
# add nic
ovs-vsctl add-port br-ex ${OVN_PHYNET_NIC}\n\
\n\
tail -f /var/log/openvswitch/ovs-vswitchd.log\n'\
>> /root/start-ovs.sh

CMD ["/bin/bash","/root/start-ovs.sh"]

结果: 注意多行文本中"#" 注释行,并没有输入到指定文件中

[root@master01 ovn-node]# cat /root/start-ovs.sh
# Set remote ovn-sb for ovn-controller to connect to
ovs-vsctl set open . external-ids:ovn-remote=tcp:${OVN_SB_SERVICE_HOST}:${OVN_SB_SERVICE_PORT}
ovs-vsctl set open . external-ids:ovn-encap-type=geneve

OVERLAY_ENDPOINT=`hostname -i`
ovs-vsctl set open . external-ids:ovn-encap-ip=${OVERLAY_ENDPOINT}

ovs-vsctl add-br br-ex
ovs-vsctl set Open_vSwitch . external-ids:ovn-bridge-mappings=phyNet:br-ex

ovs-vsctl add-port br-ex ${OVN_PHYNET_NIC}

tail -f /var/log/openvswitch/ovs-vswitchd.log

上一篇:XML卷之实战锦囊(3):动态分页

栏    目:

下一篇:docker 容器上编译 go 程序提示找不到文件问题

本文标题:dockerfile echo指定文件多行文本的方法实现

本文地址:http://www.codeinn.net/misctech/167036.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有