如何使用 docker(ruby on rails) 设置 anycable?

问题描述

如何在 docker 上设置 anycable(动作电缆)端口?

这是我的任何电缆的 Dockerfile

来自 ruby​​:2.6.3-alpine3.10

workdir /home/app

复制。 /home/app/

暴露 50051

CMD ["anycable"]

这是我的 docker-compose

版本:“3” 服务: 应用程序: 建造: 语境: 。 dockerfile: ./dockers/app/Dockerfile 容器名称:out_app 重新启动:除非停止 卷: - 。:/应用程序 - /app/node_modules - /应用程序/公共/资产 - /应用程序/公共/包 端口: - 3000:3000 D b: 建造: 语境: 。 dockerfile: ./dockers/postgis/Dockerfile 容器名称:out_db 环境: POSTGRES_USER:${DOCKER_DB_USER} POSTGRES_PASSWORD:${DOCKER_DB_PASSWORD} POSTGRES_DB:${DOCKER_DB_NAME} 卷: - /docker_data/giggle/postgres:/var/lib/postgresql/data 端口: - 5435:5432 Nginx: 建造: 语境: 。 dockerfile: ./dockers/web/Dockerfile 容器名称:out_web 重新启动:除非停止 端口: - 80:80 - 443:443 依赖于取决于: - 应用程序 卷: - ./dockers/web/Nginx.conf:/etc/Nginx/conf.d/default.conf - ./data/certbot/conf:/etc/letsencrypt - ./data/certbot/www:/var/www/certbot 证书机器人: 图片:certbot/certbot 重新启动:除非停止 卷: - ./data/certbot/conf:/etc/letsencrypt - ./data/certbot/www:/var/www/certbot 入口点:“/bin/sh -c 'trap exit TERM; while :; 做 certbot 更新; 睡眠 12 小时并等待 $${!}; 完成;'” Redis图片:redis 卷: - ../../tmp/db:/var/lib/redis/data 延迟工作: 建造: 语境: 。 dockerfile: ./dockers/delayed_job/Dockerfile 容器名称:out_delayed_job 命令:bundle exec rails 作业:工作 依赖于取决于: - D b 卷: - .:/app

任何有线:

图像:'anycable/anycable-go:edge-mrb'

端口:

-“3334”

环境:

ANYCABLE_HOST:0.0.0.0

REdis_URL:redis://redis:6379/1

ANYCABLE_RPC_HOST:0.0.0.0:3334

ANYCABLE_DEBUG:1

命令:bundle exec anycable

任何电缆: 建造: 语境: 。 dockerfile: ./dockers/anycable/Dockerfile 容器名称:任意电缆 命令:bundle exec anycable 依赖于取决于: - Redis

解决方法

您提供了 anycable-go 配置。要为 anycable-go 服务器设置自定义端口,请将 ANYCABLE_PORT: <your port> 添加到 anycable-go 映像环境或公开映像端口,例如 ports: ['<your_port>:8080']

检查 anycable 配置页面(包含环境变量信息):https://docs.anycable.io/#/anycable-go/configuration

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...