天天看点

supervisord + docker run = web页面管理运行的docker遇到的问题如下解决的方法others

周末了,整理下自己的测试系统,里面的东西还真不少,soft站点,ims(django开发的),registry,owncloud等等。想着,是不是可以都放到supervisord上面,这个机器里面运行了多少软件,一目了然,重启也方便,所以今天重点想着把docker运行的owncloud、registry、reg-ui的启动放到supervisord里面去。

遇到的问题如下

  • 问题1

    docker cannot enable tty mode on non tty input

  • 问题2

    The name “registry-web” is already in use by container 55509d67a62a

  • 问题3

    2017-01-13 15:45:23,659 DEBG ‘reg-ui’ stderr output:

    Error response from daemon: Cannot start container 361cabf20764f949ef225334ad980be54ef5cea0ec0a4137fa371513c771d3f4: Cannot link to a non running container: /registry AS /registry-web/registry

解决的方法

当然,还是要看supervisord的日志,上面的问题就是通过日志发现的

不知道咋解决的,反正有一些需要注意:

--restart-always不能带
 运行的时候 --rm是必要的 
 --link最好不要,要不然link的目标有问题,导致这个也没有办法运行,而且本身,我这个reg-ui是http访问registry,也不是很需要link啦
           

others

配置

[program:owncloud]
priority=
command=/usr/bin/docker run --rm -p : -v /data/owncloud/data:/var/www/html owncloud:latest
autostart=true
autorestart=true
startretries=
stopsignal=TERM
stopasgroup=true        ; 是否想UNIX进程组发送结束信号 (default false)
killasgroup=true             ; SIGKILL UNIX 进


[program:registry]
priority=
command=/usr/bin/docker run --rm -p : --name registry -v /data/docker/reg.ops.ac.cn/registry/data:/var/lib/registry -v /data/docker/reg.ops.ac.cn/registry/data:/tmp/registry registry:
directory=/data/docker/reg.ops.ac.cn/registry
autostart=true
autorestart=true
startretries=
stopsignal=TERM
stopasgroup=true        ; 是否想UNIX进程组发送结束信号 (default false)
killasgroup=true             ; SIGKILL UNIX 进

[program:reg-ui]
priority=
#command=/usr/bin/docker run --rm -p : --name registry-web --link registry -e REGISTRY_URL=http://reg.ops.ac.cn:5000/v2 -e REGISTRY_BASIC_AUTH="b3BzOjEyMzEyMw==" -e REGISTRY_TRUST_ANY_SSL=true -e REGISTRY_NAME=reg.ops.ac.cn:5000 hyper/docker-registry-web
command=/usr/bin/docker run --rm -p : --name registry-web -e REGISTRY_URL=http://reg.ops.ac.cn:5000/v2 -e REGISTRY_BASIC_AUTH="b3BzOjEyMzEyMw==" -e REGISTRY_TRUST_ANY_SSL=true -e REGISTRY_NAME=reg.ops.ac.cn:5000 hyper/docker-registry-web
directory=/data/docker/reg-ui
autostart=true
autorestart=true
startretries=
stopsignal=TERM
stopasgroup=true        ; 是否想UNIX进程组发送结束信号 (default false)
killasgroup=true             ; SIGKILL UNIX 进
           

supervisord运行展示

supervisord + docker run = web页面管理运行的docker遇到的问题如下解决的方法others