![]() |
1
1
没有;
如果您有一些东西需要在第一次启动时运行(如预加载数据)或每次启动时运行(可能是数据库迁移),您可以构造容器,使其在主应用程序启动之前运行。我倾向于在入口点脚本中执行这类操作;它将容器的命令作为命令行参数,因此它有机会根据运行的命令做出决定,执行所需的设置,然后实际启动命令。
这种模式的一个特别涉及的例子是 mysql image's entrypoint :如果它正在启动数据库,并且数据目录不存在,那么它将执行所有首次安装,同时启动临时数据库服务器。
您可能会看到,您是否可以在受保护的“admin”URL路径上或在未对外发布的单独端口上添加触发它们的网络调用。这样就避免了需要使用根shell来执行日常维护任务的问题。 如果不能做到这一点,自动化任务及其参数的shell脚本至少可以为您节省一些输入和记忆。 |
![]() |
mogale · docker合成服务名称 3 年前 |
![]() |
Shwetha K · Docker错误:MySQLdb_例外。操作错误:(2002,“无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器”) 3 年前 |
![]() |
Hades · 如何让VS2019+运行docker compose? 3 年前 |