我有一个WP-CLI容器,需要运行以下命令:
wp --allow-root core config --dbname=$MYSQL_DATABASE --dbuser=$MYSQL_USER --dbpass=$MYSQL_PASSWORD --dbhost=$WP_CLI_MYSQL_HOST --debug
当我在容器内的bash中运行时没有问题,但是当我尝试运行以下命令时: docker-compose run --rm wordpress-cli --rm core config --dbname=$MYSQL_DATABASE --dbuser=$MYSQL_USER --dbpass=$MYSQL_PASSWORD --dbhost=$WP_CLI_MYSQL_HOST --allow-root --debug 所有的环境变量都在主机中评估,而不是在容器中,因此它们被传递为空到容器中。
我在this question中发现,使用bash -c 'my command'将解决问题,但我的ENTRYPOINT是WP命令,所以我想直接运行而不使用bash命令。
当我在容器内的bash中运行时没有问题,但是当我尝试运行以下命令时: docker-compose run --rm wordpress-cli --rm core config --dbname=$MYSQL_DATABASE --dbuser=$MYSQL_USER --dbpass=$MYSQL_PASSWORD --dbhost=$WP_CLI_MYSQL_HOST --allow-root --debug 所有的环境变量都在主机中评估,而不是在容器中,因此它们被传递为空到容器中。
我在this question中发现,使用bash -c 'my command'将解决问题,但我的ENTRYPOINT是WP命令,所以我想直接运行而不使用bash命令。
bash -c
的方法。 - dnephin