Docker实践指南:容器启动脚本与多进程管理详解

创始人
2025-03-06 17:44:10
0 次浏览
0 评论

docker CMD报sh找不到?

只有两张图片没有问题。
如果路径不是问题,则首先对Dockerfile中CMD CMD的最后一行发表评论,然后执行命令Dockerrun ...手动在容器中手动执行/bin/home/run.sh命令,以查看是否可以成功执行它,并根据情况进行进一步的调查。
以上是解决此问题问题的想法。

如何运行多进程Docker容器

启动多学科Docker容器的方法如下:1 使用Shell脚本在序列中启动Kubernetes的每个组件。
以下是start-kubernetes.sh2 3 请注意,START-KUBERNETES.SH场景将作为1 个Docker容器的过程工作,应始终启动。
由于码头容器仅在启动过程1 时保留,换句话说,码头容器将在进程1 之后退出。
由于每个kubernetes组件都在后台过程中执行,因此在脚本的末尾添加了死去周期,以便start-kubernetes.sh脚本始终可用。
4 主管是一种过程控制工具。
当前,您需要编写一个配置文件kubernetes.conf:5 并设置命令的每个kubernetes组件的启动命令。
Autorestart参数安装在True上,这意味着领导者将负责出口的意外组件的重新启动。
stdout_logfile和stderr_logfile参数可用于安装标准输出文件和命令错误的标准命令。
6 然后在Dockerfile中,指示超级托架作为由默认Docker容器制造的团队:7 目前,监督是Docker容器中的过程1 ,您必须始终持久。
当将Nodaemon配置为True时,这意味着领导者继续在前景中而不是在后台运行。
如果领导者在后台工作,则在执行主管命令后,Docker容器也将立即退出。

部署:Docker部署自己的C/C++程序

我以前听说过Docker,但仅在表面上。
这次,由于公司的项目需求,我们了解了对Docker的深入了解。
记录为备忘录。
本文主要介绍Docker的使用。
包括如何使用Docker安装,一般术语,自定义图像,图像和启动来启动自己的程序。
由于功能有限,更深层次的原理,架构,优化和其他内容没有太多解释。
准备Ubuntu虚拟机,远程连接到Xshell(或其他远程工具),然后准备自己需要部署的程序。
接下来,您将学习Docker的基础知识,例如安装Docker和自定义镜像。
我的应用程序是一个C ++程序,需要来自因环境和第三方库的支持。
因此,我选择了Ubuntu1 8 .04 作为基本图像。
Dockerfile脚本是: 脚本首先指定基本图像,然后在图像上安装了一些工具,创建目录 /opt /ls1 000。
接下来,将本地文件夹LS1 000下的所有文件和目录复制到镜像 /opt /ls1 000目录。
将可执行的权限添加到您自己的程序或库文件中,将第三方库将其复制到您的系统目录,然后启用配置。
最后,删除安装工具留下的任何不必要的文件。
完成Dockerfile脚本后,将其和文件传递给虚拟机目录。
在命令行上输入此目录并运行以下命令: 您还可以将图像上传到图像存储库,并下载通过命令上传的图像。
对于在服务器上运行的服务,建议您启用自我定位以避免不必要的麻烦。
在下面,我们向您展示如何启用自我启动,主要是通过Docker自定义镜像。
为了使系统App1 和App2 中的两个程序作为示例,请创建两个脚本:start_app1 .sh和start_app2 .sh。
start_app1 .sh脚本包含以下内容: start_app2 .sh的脚本类似于start_app1 .sh。
只需更改两个变量名称和过程即可。
将上述脚本放在镜子中指定的位置。
在这里,我选择了/opt/ls1 000/目录。
复制镜子。
创建一个脚本以运行Docker命令(可选):auto_app1 .sh脚本的内容如下: auto_app2 .sh脚本的内容类似于auto_app1 .sh的内容。
将以上两个脚本放在虚拟机下的位置,添加执行权限,然后直接运行它们。
在脚本中扮演自发角色的字段是参数-restart =始终。
您也可以直接在虚拟机上直接在无需创建它们的情况下直接在虚拟机上运行auto_app1 .sh和auto_app2 .sh。

如何在Docker容器启动时自动运行脚本

使用Docker构建应用程序时,有时我们希望在启动Docker容器以初始化应用程序或执行一些必要的操作时自动执行某些脚本。
以下介绍了Docker容器启动时如何自动运行脚本。
首先,您需要编写一个启动脚本,该脚本包含您要在容器启动时要执行的命令。
假设启动脚本称为startup.sh,内容如下:确保脚本包含所需的操作命令并在文件开头(例如#!/bin/bash)指定解释器。
接下来,在Dockerfile中,通过复制命令将启动脚本复制到容器中的指定位置。
假设启动脚本放置在Docker容器的/usr/src/app目录中,则DockerFile中的相应部分如下:确保启动脚本与DockerFile相同,或根据实际情况调整复制命令的路径。
然后,在Dockerfile中,使用CMD或入口处指令指定在容器启动下运行的脚本。
这是一种常见方法:在上面的示例中,CMD指令用于指定启动。
SH脚本在容器启动时执行。
根据需要选择CMD或入口点指令。
接下来,使用Dockerbuild命令构建Docker Image,然后使用Dockerrun命令运行容器。
当容器启动时,将在启动脚本中定义的操作。
SH脚本将自动执行。
通过上述步骤,成功实现了启动Docker容器时自动运行脚本的目的。
在实际应用程序中,可以根据要求实施自定义初始化操作或其他必要任务的要求编写不同的启动脚本。
这是一个示例代码,该示例代码演示了当Docker容器开始启动Node.jsexpress应用程序时如何自动运行脚本。
首先,创建一个启动脚本startup.sh以启动node.jsexpress应用程序。
脚本内容如下:然后,假设应用程序代码如下:然后,创建一个简单的node.jsexpress应用程序:然后,编写DockerFile,将启动脚本startup.sh复制到docker容器中,并指定脚本在容器启动时执行。
最后,使用以下命令来构建Docker映像并运行容器:现在,在运行上述命令后,Docker容器将自动启动Node.jsexpress应用程序,然后访问http:// localhost:3 000在浏览器中查看Hello,Docker,Docker! 通过应用程序输出。
通过上面的示例,在启动Docker容器时自动运行脚本的要求,以初始化应用程序或执行其他必要的操作。
Docker脚本是用于在Docker容器中执行的脚本文件。
通常,它们用于执行特定的操作,当容器启动时,例如初始化应用程序,配置环境变量,启动服务等。
以下内容将详细介绍有关Docker脚本的相关内容。
Docker容器中可以使用许多类型的脚本文件,其中一些包括:编写Docker脚本的步骤包括:a。
创建脚本文件:首先,根据需要编写脚本文件,包括实现您要在容器启动期间执行的操作。
b。
复制脚本文件:使用Dockerfile中的复制指令将脚本文件复制到Docker容器中。
确保将文件正确复制到容器中的指定目录。
c。
指定启动命令:使用CMD或入口处指令指定命令在容器启动时执行脚本文件。
下面是一个简单的Docker脚本示例,演示了如何编写和使用Shell脚本来输出欢迎当容器启动时消息:创建一个shell脚本文件欢迎。
在上面的示例中,当运行构建的Docker容器时,Welcome.SH脚本文件将自动执行,欢迎消息“ welcometodockercercontainer!” 是输出。
热门文章
1
JavaScript数组转字符串:两种方... 如何 用 js把 数组 转换成 字符串这里的系列窗口为您提供了两种方式。1。使用...

2
C语言实现三角形面积计算:海伦公式应用实... 如何用c语言编写已知三角形三边求面积?已知语言C可以找到三角形三角侧的面积,如下...

3
计算机专业核心:C语言在多学科中的应用与... 哪些专业学c语言对于计算机专业来说,入门级编程语言C是用来为学生的编程打下坚实的...

4
JSF架构解析与Java学习资源分享:J... JavaServerFacesJSF体系结构JavaServerFaces(JS...

5
数据结构C语言版深度解析与C语言入门很简... 《数据结构(C语言版)》.严蔚敏吴伟民著.pdf在《数据结构(C语言版)》一书中...

6
C语言字符串常量解析:区别、用途及存储方... 什么是字符串常量字符串常量是C语言中的一种数据类型,它是由一对双引号括起来的字符...

7
C语言printf函数:格式字符串与输出... printf函数中的格式与输出项有什么关系?在C语言中,printf函数中的格式...

8
Excel技巧:计算字符串起始位置与合并... 如何计算字符串在特定文本中的起始位置,怎么计算字符串在特定文本中的起始位置您可以...

9
Python发音全解:掌握正确的发音方法... python怎么读我的很多学习编程的朋友可能都知道Python这个词,但是他们中...

10
字符与字符串:编程中的基础文本类型解析 字符串什么意思字符串是由数字、字母和下划线组成的字符串,表示为s=“a1a2…a...