1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > linux docker自动启动命令行 docker容器内服务随容器自启动

linux docker自动启动命令行 docker容器内服务随容器自启动

时间:2019-11-26 06:30:58

相关推荐

linux docker自动启动命令行 docker容器内服务随容器自启动

首先想说的是写这篇文章的初衷完全是因为下面这篇文章:

<

1.需要在docker中添加一个启动服务脚本auto_service.sh

注意:上面三行都是必须的。

#!/bin/sh 告诉linux应该使用什么指令运行dj此脚本。我用的是官方发布的centos7的docker。

/bin/serviceA start #启动服务A的指令,根据需要自行修改

/bin/bash 保留一个终端,这句是必要的。否则在服务A执行完成后容器就会自动退出了。

注意:上面三行都是必须的。

2.将有auto_service.sh的容器打包为镜像

3.运行

docker run -d -t -v /etc/localtime:/etc/localtime --name service_A imageX /home/auto_service.sh

注意,最后要把自行启动的脚本加上——>>

这篇文章不知道是谁写的,也不知道他能不能通过这种方式来实现他想做的。反正是被无数人引用的最多的一篇文章,也不管写的对不对就往外发(个人一直认为写博客不只是给自己看的,同时也是给其它有需求的人看的,不负责任的乱写只会误导他人)不知道这些人到底图个什么??? 对于这种风气,略感悲哀。

下面是我要写的,其实也是在网上找到的命令,只是很难通过常用的关键字来搜索到这种方法(其实就是在本地主机执行容器内的命令)。所以干脆自己再写一下,以便于有需要的朋友搜索到。其实很简单,在你的本地主机中写一个很简单的脚本就可以了。

#!/bin/bash

/usr/bin/docker start nginx-1

/usr/bin/docker exec -it nginx /bin/bash -c '/opt/nginx/sbin/nginx'

第一条命令:启动容器nginx-1(此处省略容器的创建方式);

第二条命令:后台进入nginx-1容器后执行nginx服务的启动命令:/opt/nginx/sbin/nginx。-c是关键,没有-c的话就无法在本地主机执行容器中的服务启动命令。

执行完毕后可进入容器查看nginx服务是否已经启动

我们看到进入容器后nginx服务已经启动,对应的端口也可以看到。

其实也还可以这样写,直接将两条命令连起来写就OK了,不用写脚本。

docker start nginx && docker exec -it nginx /bin/bash -c '/opt/nginx/sbin/nginx'

本文地址:/sinat_35555240/article/details/107317438

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。