189 8069 5689

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

服务器

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

创新互联公司专业为企业提供柳北网站建设、柳北做网站、柳北网站设计、柳北网站制作等企业网站建设、网页设计与制作、柳北企业网站模板建站服务,10多年柳北做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
[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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。


分享题目:dockerfileecho指定文件多行文本的方法实现
文章地址:http://cdxtjz.cn/article/cppdoe.html

其他资讯