EC2 启动时自动启动 docker-compose

2023-11-29

我有一个 Linux AMI 2 AWS 实例,其中包含一些通过 docker-compose 编排的服务,并且我使用 docker-compose up 或 docker-compose start 命令来启动它们。现在我每天都会自动启动/停止我的 ec2 实例,但是一旦启动,我想运行一些 ssh 以便能够更改到 docker-compose.yml 文件所在的目录,然后启动它。

就像是:

#!
cd /mydirectory
docker-compose start

我怎样才能做到这一点?

Thanks


我建议使用 cron 来完成此任务,因为它很简单。大多数玉米都支持非标准指令,例如@daily, @weekly, @monthly, @reboot.

您可以将其放入 shell 脚本中,并在 crontab 中将其安排为@reboot /path/to/shell/script
or
您可以使用绝对路径指定 docker-compose 文件并直接在 crontab 中将其安排为@reboot docker-compose -f /path/to/docker-compose.yml start

其他可能性:

  1. 创建一个 systemd 服务并启用它。所有启用的系统服务将在通电时启动。(难度:中等)
  2. 将脚本放在 init.d 下并将其链接到 rc*.d 目录。这些脚本也是根据优先级启动的。(难度:中等)

Bonus:

如果您在 docker-compose 文件中为容器指定重新启动策略,则在重新启动或打开服务器时它将自动启动。参考

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

EC2 启动时自动启动 docker-compose 的相关文章

  • 是否可以直接从 API Gateway 查询 Amazon RDS 实例?

    我是 API Gateway 的新手 据我所知 它是一个非常强大的工具 对于我现在正在工作的项目 我们在 RDS 中使用 PostgreSQL 实例 我已经看到可以从 API Gateway 直接访问 DynamoDB 表 所以我想知道是否
  • 如何从 minikube 中删除现有下载的 docker 镜像

    我正在将多个服务部署到本地集群 minikube using 开发空间工具 https devspace sh 一旦有人对其中一项服务进行更改并将图像推送到我们的私人存储库 我就需要这些更改在我的本地可用 我现在所做的就是完全删除minik
  • 按带宽限制成员资格

    我刚刚将 Codeigniter 应用程序部署到 Amazon EC2 使用 S3 作为媒体 使用 RDS 作为 MySQL 我需要根据使用的带宽量限制用户帐户访问 帐户将基于带宽 例如基本帐户 x 每月最多 20GB 等 但是我不知道最好
  • 检测后台操作

    在C中 检测程序在 后台模式 下调用的方法是什么 我有一个程序想要以交互方式或在后台启动 我怎样才能检测到我不应该从标准输入读取并以 已停止 tty 输入 状态结束 我应该测试 stdin 是否已关闭 我怎样才能做到这一点 编辑 isatt
  • 是否可以使用 AWS AppSync 构建离线优先的移动应用程序?

    我想使用 AWS AppSync 进行移动开发 Android iOS 但我不确定其离线功能 根据文档 数据将在离线时访问 并在客户端再次上线时自动同步 但我找不到任何有关应用程序客户端在使用 AppSync 创建和修改离线数据之前是否需要
  • 为什么 docker build 中的 COPY 未检测到更新

    我在节点应用程序上运行构建 然后使用工件构建 Docker 映像 将源代码移动到位的 COPY 命令没有检测到构建后源文件的更改 它只是使用缓存 Step 9 12 COPY server home nodejs app server gt
  • S3 REST API 和 POST 方法

    我在用着AWS S3 REST API http docs aws amazon com AmazonS3 latest API APIRest html 在解决了一些令人烦恼的签名问题后 它似乎可以工作 但是 当我使用正确的 REST 动
  • 使用 docker-compose 时如何读取外部机密

    我想知道如何将外部秘密传递到 docker compose 生成的服务中 我执行以下操作 我创造新的秘密 printf some secret value goes here docker secret create wallet pass
  • 将任何当前目录“./”添加到Linux中的搜索路径[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何将任何当前目录 添加到 Linux 中可执行文件的搜索路径中 我知道这是一个旧答案 但如果其他人像我一样通过谷歌偶然发现这个问题 这里
  • 如何删除名称最大的目录?

    我有一个包含子目录的目录 其中一些名称是数字 不看的话 我不知道数字是多少 如何删除名称最大的子目录 我认为解决方案可能会将子目录按相反顺序排序 并选择以数字开头的第一个子目录 但我不知道该怎么做 感谢您的帮助 cd yourdir go
  • Docker 使用 Entrypoint.sh 传递参数 Docker Entrypoint [重复]

    这个问题在这里已经有答案了 我尝试将参数传递给我的 docker 入口点 但失败了 这些是我遵循的步骤 Docker Build Command docker build t DBDNS build arg db sample 在 Dock
  • 如何在 PHP 中使用 Amazon 的 API 来搜索书籍? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在开发一款用于图书共享 评论和推荐的 Facebook 应用程序 我搜索了网络 使用我能想到的每个
  • Laravel:调用未定义的函数 Symfony\Component\Console\mb_convert_variables()?

    我正在运行普通 Amazon EC2 服务器 我自己安装了 PHP 5 5 21 我的 Web 应用程序是基于 Laravel 构建的 几个星期以来 一切都进展顺利 然而 现在 当运行 Laravel 命令来更新数据库架构时 php 工匠迁
  • 在ubuntu中使用gcc生成特定频率的声音?

    如何在 C C 中生成特定频率的声音 我运行 Ubuntu 10 04 并使用 gcc 有一个void sound int frequency Windows 版 TurboC 上的功能 gcc 有等效的吗 下面是利用 PortAudio
  • Dokku:从应用程序监听多个端口

    我正在使用 dokku 部署一个节点应用程序 带有express js 我的应用程序由 2 个 Express js 应用程序组成 它们监听两个不同的端口 一个是主应用程序 另一个是网络界面kue 一个简单的 Node js 作业队列 当我
  • 将 WAR 部署到 tomcat docker 容器后总是收到 404

    我有一个 grails 应用程序 它已经运行并通过 Tomcat8 Jre8 上的 Elastic Beanstalk 部署到 AWS 我现在尝试将它部署在多 Docker 环境中 但我的行为非常奇怪 我在用tomcat 8 0 jre8
  • AWS API Gateway 接受内容类型:application/xml

    我有一个关于 AWS API Gateway 的问题 我想将其他公司的 API 处理到我自己的 AWS 中的 dynamoDB 中 他们只能将格式化的 XML 发布到我的 API 我的设置是 API Gateway gt Lambda gt
  • 如何使用提交“--change”标志更新 Docker 容器路径?

    我一直在尝试使用更新容器 PATH env 变量值docker commit change 标志 但我必须缺乏对所涉及的某些部分的理解 因为我无法获得想要的结果 Given docker run it centos 6 bin bash r
  • 如何将发布档案转换为 git repo

    我有一个发布档案列表 MyProject 0 9 zip MyProject 1 0 zip MyProject 1 3 tar gz MyProject 2 0 tar gz 每个文件都包含一个与存档同名的文件夹 不带文件扩展名 其中包含
  • 哪个 AWS Simple Email Service API 是最新的

    我正在使用 AWS SES 构建一个应用程序 但我不清楚应该针对哪个版本的 API 进行开发 AWSSDK SimpleEmail https www nuget org packages AWSSDK SimpleEmail AWSSDK

随机推荐

  • RFC 2854 如何废弃 RFC 1867?

    如何 或为什么 2854 过时的 1867 这可能只是因为我不理解如何阅读 RFC 但据我所知 1867 描述了文件上传如何与 HTML 表单一起工作 而 2854 是关于 HTML 表单中未使用的 MIME 类型 两个完全不同的东西 RF
  • “安全条件不满足”响应 APDU 是什么意思?

    我正在使用 Android NFC API 玩我的 NFC 卡 我被这个 APDU 响应困住了 安全条件不满足 SW1 69 SW2 82 谁能向我解释一下这个回复是什么意思 这是一个相关问题 69 82 安全条件不满足 Android N
  • 如何将 Apple 脚本的输出返回到 macOS 中的状态栏?

    我正在编写一个脚本 该脚本会在一个应用程序中查找您执行某项活动所花费的时间 然后在 Mac 的状态栏中显示该数字 就像右上角不断计数的时钟一样 我见过其他类似的人可以向您显示同一区域的 IP 这与我想要实现的目标很接近 我认为我的脚本可以持
  • Mongo 聚合与 Java for 循环和性能

    我存储了以下 mongo 文档 Field1 ABC Field2 Field3 ABC1 Field4 id 123 id 234 id 345 Field3 ABC2 Field4 id 123 id 234 id 345 Field3
  • 通过重命名旧表然后填充新版本来将表停机时间降至最低?

    我有一些左右的永久桌子需要每晚重建 为了使这些表尽可能长时间地 活动 并且也提供仅备份前一天数据的可能性 另一位开发人员含糊地建议 当夜间构建发生时 采取与此类似的路线 创建永久表 构建版本 例如 tbl build Client 重命名活
  • MYSQL 中的批量插入

    在 MS SQL 上 我可以使用下面的 sql 命令进行批量插入 BULK INSERT myDatabase MyTable FROM C MyTextFile txt WITH FIELDTERMINATOR 现在我想在 MySQL 上
  • 如何计算JavaScript中的图像加载/渲染时间?

    有没有办法使用 javascript jquery 查找网页中的图像加载 渲染时间 这里正确的答案是使用 Chrome 或 Firefox Firebug 等浏览器内置的开发工具 它会告诉您页面中所有资源的加载时间 这些工具可以访问纯 Ja
  • PHP - 遍历文件夹并显示 HTML 内容

    我目前正在尝试开发一种方法来概述我多年来创建和 合法 下载的所有不同的网页模板 我想过像这样展示它们WordPress正在使用一个小的预览窗口预览其模板 显示带有样式和所有内容的具体文件 如何将它们分为行和列并创建Ajax模式窗口在预览和分
  • 提高远程桌面上的 WPF 应用程序速度?

    在我们的场景中 我们有一个wpf应用程序 供用户通过远程桌面使用 我们发现用户体验非常慢 对于改善这种情况下的用户体验有什么建议吗 其中一点可能是禁用任何动画 故事板 并避免在 UI 中使用渐变 更多想法值得赞赏 对于渐变来说 这不像多个渲
  • unix 中正则表达式的语法错误

    我尝试找到一个与 1 到 999 之间的任何数字匹配的正则表达式 当使用钩子时我收到语法错误 bash syntax error near unexpected token 当我不使用钩子时 什么也不会发生 我的正则表达式是 egrep 1
  • Android 操作栏:我可以替换 appcompat v7 中的自定义标题吗

    我想在肌动蛋白条的左侧添加自定义操作标题 替换为默认标题 如下图所示 显示默认图像 在这里我想添加这个标题 您需要更改操作栏中的徽标和标题 您可以使用 getActivity getActionBar setTitle your title
  • Perl:如何使所需脚本中的变量在所需脚本中可用

    example out pl my our local global whatever var test require inside pm 里面 pm print var 我不想使用软件包 它超出了我的需求 谢谢 You are alwa
  • 对数组进行排序所需的最少操作数

    我正在尝试练习解决 Codeforces 中的问题 它通过将数组的元素移动到数组的开头或结尾来对数组进行排序 起初我认为它是最长的递增子序列 但在某些情况下它不起作用 例如 如果输入是 4 1 2 5 3 则 LIS 是 3 但问题的答案是
  • 如何在 C#.NET 中更改图像的像素颜色

    我正在Java中处理图像 我设计了超过100多个图像 png 格式 它们都是透明和黑色绘图 问题是 现在我被要求更改绘图的颜色 黑色 我在谷歌上搜索了许多代码 这些代码改变了图像的位图 像素 但我不猜测我必须做什么来匹配确切的像素 并在图像
  • 构建战争时删除插件视图(gsp)

    我们在 grails 应用程序中使用各种插件 如日志记录 spring security core ui acl 等 现在这些插件带有默认的 gsp 在每个插件的视图文件夹中 我想构建一个 WAR 而不包含任何插件的视图 因此 当战争现在构
  • ASP.NET 中的多选下拉列表

    asp net 是否存在任何好的带有复选框 webcontrol 的多选下拉列表 多谢 你可以使用System Web UI WebControls CheckBoxList控制或使用System Web UI WebControls Li
  • android 棒棒糖通知背景颜色

    是否可以更改 android lollipop 中通知的背景颜色 我注意到有些通知是白色的 有些是浅灰色的 有些是深灰色的 source gottabemobile com source sftcdn net 您可以看到音乐播放器通知具有深
  • 如何使用PyTorch计算偏导数?

    我想使用 PyTorch 获取输出和输入之间的偏导数 假设我有一个函数Y 5 x1 4 3 x2 3 7 x1 2 9 x2 5 然后我训练一个网络来替换这个函数 然后我使用 autograd 来计算dYdx1 dYdx2 net torc
  • 将 pandas 数据框中的所有行除以特定行

    我有一个 pandas 数据框 如下所示 Sample name C14 Cer mean C16 Cer mean C18 Cer mean C18 1 Cer mean 0 1 1 0 124749 0 285659 35 302029
  • EC2 启动时自动启动 docker-compose

    我有一个 Linux AMI 2 AWS 实例 其中包含一些通过 docker compose 编排的服务 并且我使用 docker compose up 或 docker compose start 命令来启动它们 现在我每天都会自动启动