繁体   English   中英

Docker 版本 1.13.1、Docker Swarm、jwilder/nginx-proxy 不会作为 docker 服务启动

[英]Docker version 1.13.1, Docker Swarm, jwilder/nginx-proxy will not start as a docker service

我正在尝试按照本指南在 Docker 上设置 Elasticsearch 集群: https : //sematext.com/blog/2016/12/12/docker-elasticsearch-swarm/

但是在创建 jwilder/nginx-proxy 服务后,我一直收到关于 /tmp/docker.sock 的错误。 下面的控制台截图来自新安装和更新的 CentOS7。 我按照此处的说明通过 yum 安装了 docker: https : //docs.docker.com/engine/installation/linux/centos/

[root@centos7]# docker -v
Docker version 1.13.1, build 092cba3
[root@centos7]#
[root@centos7]# docker service create --mode global \
> --name proxy -p 80:80 \
> --network elasticsearch-frontend \
> --network elasticsearch-backend  \
> --mount type=bind,bind-propagation=rshared,src=/var/run/docker.sock,target=/tmp/docker.sock:ro \
> jwilder/nginx-proxy
xbhj4rzjyuu0k8maf1ha5fmgs
[root@centos7]# docker service ls
ID            NAME   MODE    REPLICAS  IMAGE
xbhj4rzjyuu0  proxy  global  0/1       jwilder/nginx-proxy:latest
[root@centos7]# docker ps -a
CONTAINER ID        IMAGE                                                                                         COMMAND                  CREATED             STATUS                      PORTS               NAMES
7ba303e0f8b6        jwilder/nginx-proxy@sha256:9a2d63aad9068f817c705965f41f2f32fa0bbef6b217ae5c9b2340ef23e3dcba   "/app/docker-entry..."   2 seconds ago       Created                                         proxy.kifcc5gbdcxz5ixsbx7sl1cv8.zuizhtt7q94nluuudlgjgy1yi
2fe655a93aa4        jwilder/nginx-proxy@sha256:9a2d63aad9068f817c705965f41f2f32fa0bbef6b217ae5c9b2340ef23e3dcba   "/app/docker-entry..."   10 seconds ago      Exited (1) 3 seconds ago                        proxy.kifcc5gbdcxz5ixsbx7sl1cv8.baqn1204spbw5v6qxx6qjx327
7894fd0e1dee        jwilder/nginx-proxy@sha256:9a2d63aad9068f817c705965f41f2f32fa0bbef6b217ae5c9b2340ef23e3dcba   "/app/docker-entry..."   18 seconds ago      Exited (1) 11 seconds ago                       proxy.kifcc5gbdcxz5ixsbx7sl1cv8.6s9u0q0y1kjelebszheius2es
51840cca0d32        jwilder/nginx-proxy@sha256:9a2d63aad9068f817c705965f41f2f32fa0bbef6b217ae5c9b2340ef23e3dcba   "/app/docker-entry..."   26 seconds ago      Exited (1) 19 seconds ago                       proxy.kifcc5gbdcxz5ixsbx7sl1cv8.wlwy723ts9kw00sgyu3s5f985
d52fd18567a9        jwilder/nginx-proxy@sha256:9a2d63aad9068f817c705965f41f2f32fa0bbef6b217ae5c9b2340ef23e3dcba   "/app/docker-entry..."   34 seconds ago      Exited (1) 27 seconds ago                       proxy.kifcc5gbdcxz5ixsbx7sl1cv8.wa5jk9xnly1tdxpbvonnjmoty
[root@centos7]# docker logs 2fe655a93aa4
ERROR: you need to share your Docker host socket with a volume at /tmp/docker.sock
Typically you should run your jwilder/nginx-proxy with: `-v /var/run/docker.sock:/tmp/docker.sock:ro`
See the documentation at http://git.io/vZaGJ
[root@centos7]#

jwilder/nginx-proxy 容器在作为单个容器启动时工作,使用 -v 选项挂载 docker.sock。

我已经搜索了 google(Docker 文档、jwilder/nginx-proxy git),寻找会导致这种情况的原因,但一无所获。 有人看错了吗? 我是 docker 新手,所以也许我错过了一些简单的东西。

提前致谢! :-)

不是将/var/run/docker.sock的只读挂载到/tmp/docker.sock ,而是将/var/run/docker.sock挂载到/tmp/docker.sock:ro ,因此应用程序哭了。

要纠正此问题,请稍作修改。 代替...

--mount type=bind,bind-propagation=rshared,src=/var/run/docker.sock,target=/tmp/docker.sock:ro

...和:

--mount type=bind,bind-propagation=rshared,src=/var/run/docker.sock,target=/tmp/docker.sock,ro=1

文档

readonly 或 ro:引擎安装绑定和卷读写,除非在安装绑定或卷时给出只读选项。 当为 true 或 1 或没有值时,绑定或卷以只读方式安装。 当 false 或 0 时,绑定或卷以读写方式安装。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM