Docker问题创建目录

时间:2019-05-29 12:02:21

标签: docker

我正在使用一个Shell脚本,该脚本试图在正在运行的容器内创建目录。但是由于找不到二进制文件而产生错误。 这是一个示例脚本:

#!/bin/sh
set -x
CONTAINER_ID=`docker ps | grep postgres | awk '{print $1}'`
docker exec -it $CONTAINER_ID bash mkdir /backup

1 个答案:

答案 0 :(得分:1)

尝试一下:

#!/bin/sh
set -x
CONTAINER_ID=`docker ps | grep postgres | awk '{print $1}'`
docker exec -it $CONTAINER_ID sh -c "mkdir /backup"

sh -c "mkdir /backup"应该可以工作。

如果您的docker映像内部有bash,请尝试bash -c "mkdir /backup"

我尽了一切努力,并获得了预期的结果。

$ sh script.sh
+ docker ps
+ awk '{print $1}'
+ grep inspiring_sinoussi
+ CONTAINER_ID=08a35fa3c040
+ docker exec -it 08a35fa3c040 sh -c 'mkdir /backup'

$ docker exec -it 08a35fa3c040 sh
/ # ls / | grep backup
backup