精华内容
下载资源
问答
  • sh 前台运行
    千次阅读
    2017-02-18 15:34:53

    Dockerfile Tomcat 前台运行

     

            如果使用我们常用的startup.sh作为容器启动脚本,容器会自动关闭,此时Tomcat在后台运行,没有在前台运行的线程

     

    Dockerfile 文件最后加上

    EXPOSE 8080

    CMD ["catalina.sh", "run"]

    更多相关内容
  • 后台运行、前台运行

    2020-08-28 21:50:21
    #bg %1 [1]+ /root/bin/rsync.sh & 这里终端给出的反馈中有个 &符号,它的意义是后台运行 可以用jobs命令查看正在运行的任务: #jobs [1]+ Running /root/bin/rsync.sh & 如果你想把它调回到前台运行可以用fg 作业号...

    &、ctrl + z、ctrl+c、jobs、fg、bg理解

    & 经常被用到

    这个用在命令的最后,可以把这个命令放到后台执行

    ctrl + z

    将一个正在前台执行的任务放到后台,并且暂停,用术语讲就是挂起

    ctrl + c

    将一个正在前台执行的任务终止执行,也就是常说的结束任务,术语:终止

    jobs

    查看当前有多少在后台运行的命令

    fg

    将后台中的任务、命令调至前台继续运行
    如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出

    bg

    将后台中暂停(挂起)的命令、任务调至 后台继续运行
    如果后台中有多个命令,可以用bg %jobnumber将选中的命令、任务调出执行

    特别注意
    %jobnumber是通过jobs命令查到在后台正在执行的任务的序号,注意它不是pid

    实例

    其实我们都知道,挂起、终止的意思,在Linux中Ctrl+Z是挂起的意思,跟中止一样的意思,按下之后终端的提示是:

    [1]+ Stopped /root/bin/rsync.sh
    
    • [1]中的1为作业号
      然后我们可以把程序从挂起状态调度到后台执行:(bg后面的数字是作业号)
    #bg %1
    [1]+ /root/bin/rsync.sh &
    

    这里终端给出的反馈中有个 &符号,它的意义是后台运行
    可以用jobs命令查看正在运行的任务:

    #jobs
    [1]+ Running /root/bin/rsync.sh &
    

    如果你想把它调回到前台运行可以用fg 作业号的形式,只不过这样就必须在控制台中等待其完成

    #fg %1
    /root/bin/rsync.sh
    

    fg、bg、jobs、&、ctrl+z都是跟系统任务有关的。

    • ctrl+z是挂起
    • ctrl+c是终止

    参考

    &、ctrl + z、ctrl+c、jobs、fg、bg理解

    展开全文
  • 例如:[1]+ Running myscript.sh 将需要的作业放到后台运行:bg 1. 我们常用的指令是ctrl+z挂起任务, 然后fg, 再次执行最近挂起的任务, 从字面来看, bg和fg就是一对相对的指令(background 和 foregro

    问题

    linux中有时候我们可能会跑脚本测试服务之类的, 测试可行后大多会重新后台执行脚本运行; 可也不免有时候会有程序启动后,想直接转到后台运行, 不想再重新拉起.

    方法

    1. 运行命令
    2. 按 Ctrl-Z 挂起这个命令
    3. 运行 jobs 命令,查看作业号。例如:[1]+ Running myscript.sh
    4. 将需要的作业放到后台运行:bg 1.

    我们常用的指令是ctrl+z挂起任务, 然后fg, 再次执行最近挂起的任务, 从字面来看, bgfg就是一对相对的指令(backgroundforeground), 后面指定任务表示要后台运行的指令;
    运行示例

    其它实现方式

    1. nohup
    2. screen
    3. tmux

    参考文献

    1. Linux 前台运行中的脚本,有没有办法转到后台(会话断开也不影响那种)
    展开全文
  • docker 容器默认会把容器内部...为了验证这一点,我写了两个go程序并静态编译为可执行程序,common 和 daemon ,他们即可前台运行也可后台运行 前台运行 ./common ./daemon 后台运行 ./common serve -d ./daemon -d

    docker 容器默认会把容器内部第一个进程,也就是 pid=1 的程序作为docker容器是否正在运行的依据,如果docker容器中 pid = 1 的进程挂了,那么docker容器便会直接退出,也就是说Docker容器中必须有一个前台进程,否则认为容器已经挂掉。

    为了验证这一点,我写了两个go程序并静态编译为可执行程序,common 和 daemon ,他们即可前台运行也可后台运行

    前台运行

    ./common 
    ./daemon 
    

    后台运行

    ./common serve -d 
    ./daemon -d 
    

    我们通过这两个程序来构建镜像,看他们是如何运行的。

    Dockerfile 文件内容:

    FROM alpine
    
    ADD daemon /data/www/
    ADD common /data/www/
    WORKDIR /data/www
    
    CMD cd /data/www/ && ./daemon -d && ./common 
    

    执行命令

    docker build -t common .
    
    docker run --name common -d common 
    
    docker exec -it common sh 
    
    ps -ef 
    PID   USER     TIME  COMMAND
        1 root      0:00 ./common 
        9 root      0:00 ./daemon
       16 root      0:00 sh
       26 root      0:00 ps -ef
    
    exit 
    docker stop common 
    docker rm common 
    docker rmi common 
    

    修改 Dockerfile 文件的 CMD 指令,重新构建,并运行

    CMD cd /data/www/ && ./common -d && ./daemon
    
    ps -ef
    PID   USER     TIME  COMMAND
        1 root      0:00 ./daemon
        9 root      0:00 ./common
       16 root      0:00 sh
       21 root      0:00 ps -ef
    

    再次修改 Dockerfile 文件的 CMD 指令,重新构建,并运行

    CMD cd /data/www/ && ./common && ./daemon
    
    ps -ef
    PID   USER     TIME  COMMAND
        1 root      0:00 ./common && ./daemon
       16 root      0:00 sh
       20 root      0:00 ps -ef
    

    由此可见docker容器运行后,会将CMD中的第一个前台进程作为pid=1的进程,而不管在它之前是否还有别的进程。
    第一个前台进程后面无法再执行别的进程,因为前台进程会阻塞,所有后面的命令就成为了此进程的参数了。

    所以,如果想在一个容器里面启动多个后台进程加一个前台进程,那么这个前台进程要写在最后面。

    这也是为什么,Docker容器启动web服务时,都指定了前台运行的参数。
    例如apache:

    ENTRYPOINT [ "/usr/sbin/apache2" ]
    CMD ["-D", "FOREGROUND"]
    

    又例如nginx:

    ENTRYPOINT [ "/usr/sbin/nginx", "-g", "daemon off;" ]
    

    进入nginx容器,查看进程

    ps -ef |grep nginx
    root         1     0  0 Oct16 ?        00:00:00 nginx: master process nginx -g daemon off;
    nginx       19     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       20     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       21     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       22     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       23     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       24     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       25     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       26     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       27     1  0 Oct16 ?        00:00:00 nginx: worker process
    nginx       28     1  0 Oct16 ?        00:00:00 nginx: worker process
    

    从这个意义上来讲,一个程序从宿主机迁到docker容器,程序是需要做一些调整的。

    或者启动额外的进程来充当pid=1的前台进程,例如上面的 daemon 进程。

    当然 linux 系统下也提供了一些阻塞的指令,比如:
    tali -f xxx
    或者
    top

    但是不管怎么样,pid=1的进程必须存在。

    展开全文
  • docker容器的前台后台运行

    万次阅读 2021-06-22 20:29:46
    文章目录容器运行时的 -dit 选项默认:前台运行,stdout 和 stderr 转接出来,而stdin关了前台 -t前台 -i前台 -itdetach模式前后台切换--attach-i 和 -a注:bash 镜像 容器运行时的 -dit 选项 2021-06-22 docker run...
  • 1、运行.sh文件直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。(1)&命令功能:加在一个命令的最后,可以把这个命令放在后台执行(2)nohup命令...
  • - 运行交互式的容器(`docker container run ... -i -t`) - 后台运行容器(`docker container run ... -d`) - 查看运行容器的日志(`docker container logs [container id]`) - 关闭正在运行的容器(`docker ...
  •  对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然后使用bg命令将停止的作业放到后台运行: $ ./test.sh [1]+ Stopped ./test.sh $ bg %1 [1]+ ./test.sh
  • linux shell运行命令详解

    千次阅读 2021-05-09 04:45:33
    在Linux下,如果你需要运行shell程序,那么应该使用那个命令呢?下面由学习啦小编为大家整理了linux shell运行命令的相关知识,希望对大家有帮助!linux shell运行命令说明:用户可以用任何编辑程序来编写Shell程序。...
  • 在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业...对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然...
  • 用xshell运行linux sh脚本怎么退出

    千次阅读 2020-12-07 18:16:04
    之前用xshell远程打开了一个sh脚本文件,但是运行到一半不想运行了想要退出 找了网上的方法 使用exit命令,但是提示 Your exit is invalid! 然后我就想把这行文字复制下来去百度一下解决方案,结果按了ctrl+c就...
  • 在linux中需要启动.sh文件才行,所以需要将bat文件改成sh文件才行 先粘出bat文件和sh文件,里面需要的jar包比较多我就删了一部分jar包 bat: @echo offs set lib=E:\newSpace\androidBass\lib set CLASSPATH=...
  • Linux程序前台后台切换

    千次阅读 2021-05-12 06:19:11
    2、如果程序正在前台运行,可以使用 Ctrl+z 选项把程序暂停,然后用 bg %[number] 命令把这个程序放到后台运行,摁Ctrl+z,然后在最后一行加上bg %number 3、对于所有运行的程序,我们可以用jobs –l 指令查看[ke...
  • watch -n 10 sh test.sh & #每10s在后台执行一次test.sh脚本 二、ctrl + z 可以将一个正在前台执行的命令放到后台,并且处于暂停状态。 三、jobs 查看当前有多少在后台运行的命令 jobs -l选项可显示所有任务的...
  • 工作中有一个linux下的服务需要启动,但是机器总是断电,导致需要反复启动,找了一下开机自启动的方法,解决了这个问题。Linux设置开机自启动非常简单,只要找到rc.local.../bin/sh## This script will be executed ...
  • 主要介绍了Linux查看和关闭后台运行程序的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 2、如果程序正在前台运行,可以使用 Ctrl+z 选项把程序暂停,然后用jobs -l查看刚才暂停的程序的number(工作号),然后使用bg %[number] 命令让这个暂停的程序在后台继续运行,jobs命令查看当前终端后台运行的任务...
  • 一、运行.sh文件html直接用./sh 文件就能够运行,可是若是想后台运行,即便关闭当前的终端也能够运行的话,须要nohup命令和&命令。python(1)&命令shell功能:加在一个命令的最后,能够把这个命令放在后台...
  • k8s中docker容器的启动命令(在yaml的command字段中配置)必须是前台执行,不能使用后台执行程序, nohup ./start.sh & 否则kubelet创建了包含这个容器的pod之后运行该后台命令后,就认为pod执行结束了,然后...
  • Flume配置与运行前台、后台)

    千次阅读 2021-04-23 18:01:36
    R 755 flume.sh 调用start 函数: sh /sysware/flume.sh start 调用 stop命令 sh /sysware/flume.sh stop 调用重启命名 sh /sysware/flume.sh restart 以上脚本即可完成flume的start,stop,restart,并且在后台运行的...
  • 一个容器中运行多个前台进程

    千次阅读 2020-03-17 17:14:15
    #先说解决办法,多个前台运行文件直接用&连接,不要使用&&或者单个单个hold。有耐心的同学可以看看前因后果。欢迎大佬的评论与指教! 背景: 在docker容器中,如果一个容器只运行一个进程服务是蛮简单的...
  • 京淘项目前台配置,配合我的博客文档可直接导入项目,其中包含web端的src文件,pom文件,结合之前的文档可以直接运行
  • shell 后台运行

    千次阅读 2021-04-14 14:31:04
    3、在1的基础上将运行中的test.sh,切换到后台并暂停:ctrl+z 4、执行ctrl+z后,test.sh在后台是暂停状态(stopped),使用命令:bg number让其在后台开始运行(“number”是使用jobs命令查到的[ ]中.
  • 前台启动nginx命令: nginx -g "daemon off;" 前台启动httpd命令: httpd -DFOREGROUND ...catalina.sh run 前台启动Redis: redis-server 前台启动php-fpm: php-fpm -F 前台启动supervisor: supervisord -n
  • 项目介绍:(精品)[含论文+源码等]基于S2SH的旅游网站含前台与后台[包运行成功]高清视频演示:https://www.bilibili.com/video/BV1S341137JS/系统说明:《【论文】S2SH的旅游网站系统》该项目采用技术jsp、strust2、...
  • 主要介绍了Linux nohup实现后台运行程序及查看(nohup与&),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,678
精华内容 8,671
关键字:

sh 前台运行