如何在docker compose文件中运行多个命令

如何在docker compose文件中运行多个命令,docker,docker-compose,dockerfile,Docker,Docker Compose,Dockerfile,我需要从地址(/service/variables.txt)的docker映像中的文本文件中读取一组环境变量,并将它们设置为我正在运行的容器中的环境变量,然后执行一个使用它们的命令。我在docker compose文件中执行这些步骤,如下所示。我想让我的docker作文看起来像下面这样 services: service1: image: imagename:tag container_name: name command: - exec sourc

我需要从地址(/service/variables.txt)的docker映像中的文本文件中读取一组环境变量,并将它们设置为我正在运行的容器中的环境变量,然后执行一个使用它们的命令。我在docker compose文件中执行这些步骤,如下所示。我想让我的docker作文看起来像下面这样

services:
  service1:
    image: imagename:tag
    container_name: name
    command:
         - exec source /service/variables.txt
         - exec export $(cut -d= -f1 /service/variables.txt)
         - exec start_service $VAR1 $VAR2

我的问题是,如何在docker文件中的
command
下有多个
exec
命令?

将命令包装到脚本中是您的一个选项吗?您可以将其包装到shell脚本中,并将其作为docker映像的入口点运行。脚本可能重复,因此脚本应位于单独的文件中,我将所有3个命令都包含在脚本中有吗?我将这些命令放在脚本文件(script.sh)中,该文件与docker compose.yaml文件位于同一目录中,但在运行docker compose时,它表示script.sh不存在,“stat source./script.sh:没有这样的文件或目录”