docker 容器服务间访问

≡放荡痞女 提交于 2020-02-26 22:19:00
docker 部署的每个服务运行在不同的容器下,每个容器的IP都不同   可以用命令查看
docker exec -it containerid cat /etc/hosts
通讯方式:1、通过宿主机的IP和端口通讯
通讯方式2、设置自定义网络 通过容器名访问
 sddm-backend:
    restart: always
    image: sddm/sddm-backend
    container_name: sddm-backend
    entrypoint: ["java","-jar","/app.jar"]
    build:
      context: .
      dockerfile: Dockerfile
      args:
        - ARTIFACT_NAME=sddm-archive-0.0.1
    ports:
      - "8088:8088"

    networks:
      - sddm
      - proxy

networks:
  sddm:
  proxy:

docker-compose up 后可以查看网络

docker network ls

服务之间可以通过容器的名字来访问 如:

http://sddm-backend:8088/api/documents/new 

docker-compose.yml 里面使用已定义的网络:

networks:
  default:
    external: #使用已建立好的网络
      name: backend_proxy

参考:https://juejin.im/post/5ce26cb9f265da1bcd37aa7c

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!