首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Docker应用程序无法在docker-compose中使用shinyproxy启动,可与run一起使用

Docker应用程序无法在docker-compose中使用shinyproxy启动,可与run一起使用
EN

Stack Overflow用户
提问于 2019-01-31 10:37:57
回答 2查看 1.2K关注 0票数 2

我有一个shinyproxy应用程序,可以很好地与docker run ...配合使用

代码语言:javascript
运行
复制
docker run --name=shinyproxy -d -v /var/run/docker.sock:/var/run/docker.sock --net telethonkids-net -p 80:8080 --rm telethonkids/shinyproxy

当我尝试在浏览器上加载以下docker-compose shinyproxy时,应用程序在尝试启动时超时(Container无响应):

代码语言:javascript
运行
复制
version: "3.6"
services:
    shinyproxy:
      build:
        context: ./shinyproxy
        dockerfile: Dockerfile
      networks:
        - telethonkids-net
      volumes:
        - "/var/run/docker.sock:/var/run/docker.sock"
      ports:
        - 80:8080

networks:
  telethonkids-net:

我在Ubuntu 18.04虚拟机器上运行这个程序。还有其他一些类似标题的问题,但我没有看到与我的问题相匹配的问题。

这是我的application.yaml

代码语言:javascript
运行
复制
proxy:
  title: Shiny Proxy Landing Page
  hide-navbar: true
  landing-page: /
  port: 8080
  docker:
    internal-networking: true
  specs:
  - id: id1
    display-name: xxx
    description: yyy
    container-cmd: ["/usr/bin/shiny-server.sh"]
    container-image: telethonkids/zzz
    container-env:
      user: 'shiny'
      environment:
        - APPLICATION_LOGS_TO_STDOUT=false

Shinyproxy Dockerfile:

代码语言:javascript
运行
复制
FROM openjdk:8-jre

RUN mkdir -p /opt/shinyproxy/
RUN wget https://www.shinyproxy.io/downloads/shinyproxy-2.1.0.jar -O /opt/shinyproxy/shinyproxy.jar
COPY application.yml /opt/shinyproxy/application.yml

WORKDIR /opt/shinyproxy/
CMD ["java", "-jar", "/opt/shinyproxy/shinyproxy.jar"]
EN

Stack Overflow用户

回答已采纳

发布于 2019-02-01 09:59:58

我认为这是一个菜鸟失误。我创建了一个网络来运行我的应用程序。docker run --net telethonkids-net。当尝试在docker-compose内部使用相同的网络时,这会导致问题:

网络:telethonkids net:

在更仔细地阅读文档之后,我可以将这个预先创建的网络与以下内容结合使用:

代码语言:javascript
运行
复制
networks:
  default:
    external:
      name: telethonkids-net

和添加

代码语言:javascript
运行
复制
  networks:
    default:

添加到shinyproxy服务。

然后应用程序就启动了。修复方法是删除docker中创建的网络,然后在docker-compose中创建它。我还需要为网络命名,使其与我在shinyproxy/application.yml中的名称一致。

代码语言:javascript
运行
复制
networks:
  telethonkids-net:
    name: telethonkids-net
票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54452541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档