随后:https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04(这些步骤始终适用于较低版本的ubuntu)
docker run -d --name = local-consul -p 8500:8500 -e CONSUL_BIND_INTERFACE = eth0领事docker
(像往常一样)
docker ps
空
docker ps -a
状态:“ 4秒前退出(0)”
码头工人日志在本地领事
==>找到接口'eth0'的地址'172.17.0.2',设置了绑定选项... /usr/local/bin/docker-entrypoint.sh:exec:第98行:docker:找不到
docker --version
Docker版本19.03.11,内部版本42e35e61f3
systemctl状态泊坞窗
●docker.service-Docker应用容器引擎 已加载:已加载(/lib/systemd/system/docker.service;已启用;供应商预设:已启用) 活动:自星期一2020-06-01 14:30:59美国东部时间起活动(运行); 22分钟前 TriggeredBy:●docker.socket 文件:https://docs.docker.com 主PID:46472(dockerd) 任务:56 内存:194.9M CGroup:/system.slice/docker.service └─46472/ usr / bin / dockerd -H fd:// --containerd = / run / containerd / containerd.sock
问题:
如何修复/usr/local/bin/docker-entrypoint.sh: exec: line 98: docker: not found
我已经检查过了。我的本地计算机上没有此文件:/usr/local/bin/docker-entrypoint.sh
答案 0 :(得分:1)
-d
告诉Docker分离并在后台运行容器。它与容器退出时无关。入口点进程终止时,容器将退出。在这种情况下,hello-world容器仅打印一条消息并退出,因此它将不会继续运行,分离或不继续运行。
编辑:
docker run -d --name=local-consul -p 8500:8500 -e CONSUL_BIND_INTERFACE=eth0 consul docker
如果您查看entrypoint script的领事图像,您会看到它运行exec "$@"
。因此,上面的docker run
命令将尝试在docker
容器中运行consul
。该命令在容器中不存在,因此您得到docker: not found
。
您可能只想在没有其他参数的情况下运行容器:
docker run -d --name=local-consul -p 8500:8500 -e CONSUL_BIND_INTERFACE=eth0 consul