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

<

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'

本文地址:https://blog.csdn.net/sinat_35555240/article/details/107317438

linux docker自动启动命令行,docker容器内服务随容器自启动相关推荐

  1. docker镜像中进入容器命令行并查看运行中的容器

    之前遇到过一个项目直接给了一个docker环境,但是我对于docker的命令行并不熟,于是查了相关资料,这里以容器MySQL为例,给大家举个例子 启动镜像中的MySQL 启动MySQL分为两步: 查看 ...

  2. docker ps命令详解 列出运行中的容器

    docker ps命令详解 列出运行中的容器 使用docker ps命令即可列出运行中的容器,执行该命令后,会出现如下7列表格 CONTAINER_ID      表示容器ID IMAGE       ...

  3. linux docker ps -a,docker ps-docker ps a-docker ps无反应-docker ps是什么意思-docker ps命令解析-docker进程ps-嗨客网...

    Docker ps命令概述 docker ps 命令可以用来列出 Docker ps命令语法 haicoder(www.haicoder.net)# docker ps [OPTIONS] Docke ...

  4. docker login 命令行登录失败,页面登录成功

    docker login 命令行登录失败 Error response from daemon: Get "https://registry-1.docker.io/v2/": u ...

  5. linux的常用命令行

    linux的常用命令行 sftp– help chmod g+w 文件 nohl 清除文件高亮显示 可用命令: cd 路径 更改远程目录到"路径" chgrp group plcd ...

  6. 树莓派 4B 下 Linux 系统高级命令行

    2021SC@SDUSC 现在我们已经将 ubuntu 系统安装到了树莓派上面,并且实现了两种连接树莓派的方式,同时对 Linux 系统中常见的命令有了一定的了解,接下来就是对一些 Linux 系统高 ...

  7. saltstack批量查看linux信息,Saltstack 命令行:批量发送命令,返回执行结果

    批量发送发送命令符,并返回结果. salt '*' cmd.run 'df -h' ---------------------------------------- Stest1: Filesyste ...

  8. Linux篇之命令行下载远程文件curl命令的介绍与使用

    一.curl简介 通常情况下,当我们不想在本机下载文件,上传至服务器时,觉得这样过于麻烦,步骤繁琐. 那么该怎么办呢? 在Linux中,服务器下载文件,提供了一种curl命令,它可以实现在Linux中 ...

  9. 扫盲 Linux&UNIX 命令行——从“电传打字机”聊到“shell 脚本编程”

    扫盲 Linux&UNIX 命令行--从"电传打字机"聊到"shell 脚本编程" 本文目标读者 虽然本文的标题号称是[扫盲],但俺相信:即使是一些 P ...

最新文章

  1. Linux Wi-Fi 编程API介绍
  2. java中xxe漏洞修复方法
  3. 埃斯顿机器人 王杰高_联盟新闻|中国机器人产业联盟召开机器人行业骨干企业专家视频研讨会...
  4. 【测】测试用MetaWeblog访问博客园
  5. 分享一个关于Java调用百度、高德API、ArcGIS地图获取逆地理的代码
  6. curl -O 下载文件
  7. 基于word API 创建的可以打开word的自定义控件
  8. C++Vector使用方法
  9. jaxb注解使用_使用JAXB的简介
  10. Python批量检查网页是否被注入其他页面
  11. 计算机科学中最重要的 32 个算法
  12. 以太坊 事务处理流程
  13. 十六进制编辑器_Windows最佳免费十六进制编辑器
  14. python人工智能难不难_AI人工智能难不难 怎么进入人工智能行业
  15. 传智播客dos命令_命令行英雄,原始播客
  16. CM9和AOKP的区别
  17. [AutoVue开发手册]第一篇——自定义Applet脚本
  18. sql 查询本月请假的人数_温故而知新---学习SQL练习作业
  19. 爬虫 403 增加header和代理ip也没用?有可能是cloudflare在搞事情
  20. EMD——EEMD——CEEMD

热门文章

  1. cocoscreator3d 获取mesh 大小_Cocos Creator 3D 粒子系统初战: 不要钱的酷炫火焰拿走不谢!...
  2. 力扣836.矩形重叠
  3. 力扣35.搜索插入位置
  4. Spring MVC 原理 - DispatcherServlet调用完整过程
  5. 求树的直径(两种方法)
  6. 同一台主机部署两个比特币钱包以及rpc服务的摘要
  7. 【LOJ】#2085. 「NOI2016」循环之美
  8. Selenium with Python 006 - 操作浏览器
  9. 先排序,再限定记录数,然后计算指定字段的总和
  10. [数论-欧拉函数的应用]NEFU 1115