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

服务器

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持西部数码

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » dockerfile echo指定文件多行文本的方法实现

登录

找回密码

注册