• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    在docker中执行linux shell命令的操作

    在docker中执行shell命令,需要在命令前增加sh -c,例如:

    docker run ubuntu sh -c 'cat /data/a.txt > b.txt'

    否则,指令无法被正常解析。

    补充:【Docker应用】 docker中执行指定脚本(docker 下运行springboot应用)

    【Docker应用】 docker中执行指定脚本

    这里是执行spring boot的应用的实例:

    1. 制作执行sh脚本的镜像文件(模板)

    Dockfile
    FROM vertigomedia/ubuntu-jdk8
    RUN touch /root/app_start.sh
    RUN echo "#!/bin/bash" > /root/app_start.sh
    RUN echo "echo 111" >> /root/app_start.sh
    RUN chmod a+x /root/app_start.sh
    ENV TZ 'Asia/Shanghai'
    ENV APP_FILE /root/app_start.sh
    EXPOSE 8889
    CMD $APP_FILE
    #ENTRYPOINT ["/bin/sh", "-c", "$APP_FILE"]

    2. 制作脚本文件(容器中要执行的脚本)

    container.sh
    #!/bin/bash
    echo "test xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
    java -jar -Xms500m -Xmx500m -Dspring.profiles.active=test-docker-1 /root/app.jar

    3. 制作启动脚本(这里只是启动命令)

    docker run -itd \
    
     --name test_container \
    
     --hostname test_container \
    
     --net test_net --ip 170.170.1.199 \
    
     --volume /root/container.sh:/root/app_start.sh \
    
     --volume /opt/test-1.0.0-SNAPSHOT.jar:/root/app.jar \
    
     --privileged=true \
    
     test:123 /bin/bash -c 'sh /root/app_start.sh'

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    上一篇:Docker 退出container后保持继续运行的操作
    下一篇:如何监控docker容器运行状态 shell 脚本
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    在docker中执行linux shell命令的操作 在,docker,中,执行,linux,shell,