运行 docker 运行 命令作为 npm 脚本
Run docker run command as npm script
我有以下命令 运行s 当 运行 本身时(输出:你好):
$ docker run -it --rm --name fetch_html -v ${pwd}:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php
Hello
但是,我想 运行 它作为一个 npm 脚本,因为每次都把整个东西都写出来有点乏味:
{
...
"scripts": {
"fetch_html": "docker run -it --rm --name fetch_html -v ${pwd}:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php scripts/fetch_html/cli.php"
},
...
然后:
$ npm run fetch_html
但它给了我以下错误:
docker: Error response from daemon: create ${pwd}: "${pwd}" includes
invalid characters for a local volume name, only
"[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a
host directory, use absolute path.
我曾尝试将其更改为 $(pwd),因为我记得 Windows 和 Linux 在此处具有不同的语法(?)。主机是Windows10.
如果您使用的是 Windows 10 CMD 解释器,试试这个:
{
...
"scripts": {
"fetch_html": "docker run -it --rm --name fetch_html -v %cd%\:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php scripts/fetch_html/cli.php"
},
...
我有以下命令 运行s 当 运行 本身时(输出:你好):
$ docker run -it --rm --name fetch_html -v ${pwd}:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php
Hello
但是,我想 运行 它作为一个 npm 脚本,因为每次都把整个东西都写出来有点乏味:
{
...
"scripts": {
"fetch_html": "docker run -it --rm --name fetch_html -v ${pwd}:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php scripts/fetch_html/cli.php"
},
...
然后:
$ npm run fetch_html
但它给了我以下错误:
docker: Error response from daemon: create ${pwd}: "${pwd}" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
我曾尝试将其更改为 $(pwd),因为我记得 Windows 和 Linux 在此处具有不同的语法(?)。主机是Windows10.
如果您使用的是 Windows 10 CMD 解释器,试试这个:
{
...
"scripts": {
"fetch_html": "docker run -it --rm --name fetch_html -v %cd%\:/usr/src/myapp -w /usr/src/myapp php:7.4-cli php scripts/fetch_html/cli.php"
},
...