主页 > 知识库 > dockerfile echo指定文件多行文本的方法实现

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

热门标签:网站建设 使用U盘装系统 硅谷的囚徒呼叫中心 阿里云 百度竞价点击价格的计算公式 智能手机 美图手机 检查注册表项

在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

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

标签:怀化 黄山 湘潭 湖北 贺州 烟台 通辽 山南

巨人网络通讯声明:本文标题《dockerfile echo指定文件多行文本的方法实现》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266