首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NGINX docker编写liberty REST API

NGINX docker编写liberty REST API
EN

Stack Overflow用户
提问于 2019-03-05 23:59:22
回答 1查看 83关注 0票数 1

我有docker-compose with Liberty和nginx容器,但从nginx请求调用中得到404错误。

示例: Liberty API URL :http://localhost:9082/sxrw-main/api/v1/terminals

nginx URL:http://localhost:81/sxrw-main/api/v1/terminals抛出404错误

docker-compose

代码语言:javascript
复制
version: "3"

services:
  ship-api:
    image: docker.csx.com/websphere-liberty:javaee8
    volumes:
      - ./dist/config:/config
      - ./dist/shared:/opt/ibm/wlp/usr/shared
    ports:
      - 9082:9080
      - 944:9443

  ship-web:
    image: docker.csx.com/nginx:latest
    ports:
      - "81:80"
    volumes:
      - ./html:/usr/share/nginx/html
      - ./nginx.conf:/etc/nginx/nginx.conf
    links:
      - ship-api
    networks:
      - shipcsx
networks:
  shipcsx:
    driver: bridge

这是我的nginx.conf文件

代码语言:javascript
复制
   events {
  worker_connections 1024;
}
http {
  server {
    listen 80;
     location /sxrw-main/api {
     proxy_pass http://ship-api:9082;
    }

  }
  log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
  access_log  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
}
EN

回答 1

Stack Overflow用户

发布于 2019-03-06 00:08:23

您可能需要将ship-api添加到ship the网络。我不认为指定了网络的容器也会加入默认网络,即使指定了链接,它们也必须共享网络。

“注意:如果同时定义链接和网络,则它们之间具有链接的服务必须至少共享一个公共网络才能通信。我们建议改用网络。”从documentation

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55006848

复制
相关文章

相似问题

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