我已使用命令
使用名称为jasmin_01
的docker容器创建了容器
docker run -d -p 1401:1401 -p 2775:2775 -p 8990:8990 --name jasmin_01 jookies/jasmin:latest
现在,我正在尝试通过运行
来访问位于容器内/ var / log / jasmin中的日志文件 docker run -d -v /home/user/jasmin_logs:/var/log/jasmin --name jasmin_01 jookies/jasmin:latest
而我得到了错误
守护程序的错误响应:冲突。容器名称“ / jasmin_01”已被容器“ 6bc05cf61a03b74f2b18d05378048e201e3f6ded768ddaf3f2660c39f9d76888”使用。您必须删除(或重命名)该容器才能重用该名称。
我该如何解决?
答案 0 :(得分:1)
该错误完全表明该问题:您正在尝试启动一个具有相同名称(jasmin01)的新容器。添加唯一名称,停止现有容器,或删除--name
,以便Docker将自动创建唯一名称。
答案 1 :(得分:0)
冲突,原因是容器名称docker ps -a
已被使用。您可以通过docker stop jasmin_01
docker rm $(docker ps -a -q)
docker run -d -v /home/user/jasmin_logs:/var/log/jasmin --name jasmin_01 jookies/jasmin:latest
进行检查。解决此问题的方法是:
docker run -d -v /home/user/jasmin_logs:/var/log/jasmin --name jasmin_02 jookies/jasmin:latest
或者最简单的方法是更改您的新容器名称
const splitMyDateString = str => {
const [day, mon, yr] = str.split('-').map(Number);
return [yr, mon, day];
};
const makeDate = ([yr, mon, day]) => {
return new Date(yr, mon - 1, day);
};
let minDate = makeDate(splitMyDateString("27-05-2019"));
let maxDate = makeDate(splitMyDateString("27-05-2019"));
let date = makeDate(splitMyDateString("13-02-2018"));
let valid = (date >= minDate) && (date <= maxDate);
答案 2 :(得分:0)
docker run --name foo
运行名为foo
因此,如果您尝试两次,确实会看到重复的名称错误
您可能想要docker exec
:
$ docker help exec
Usage: docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
Run a command in a running container
例如docker exec jasmine_01 cat /var/log/jasmine/jasmine.log