docker-compose文件告诉如何运行图像,而不是如何构建它。这两个是完全独立的概念。我也不确定你想做什么。如果需要使用数据初始化容器,只需将脚本(或iql文件)挂载到 /docker-entrypoint-initdb.d docker-compose文件的卷内的位置,例如:
/docker-entrypoint-initdb.d
volumes: - influxdb-data:/var/lib/influxdb - project_import.sh:/docker-entrypoint-initdb.d/import.sh:ro
将在容器启动时执行脚本(或iql文件),而不是在构建映像时执行。如果你不相信我退房 入口点脚本 的图像,看看这个过程是如何工作的。
请记住,每次容器启动时都会执行这些脚本。