From fbb8ebf5284a822e47b6fcd34bbc9cd80be18ba4 Mon Sep 17 00:00:00 2001 From: bootjp / Yoshiaki Ueda Date: Sat, 15 Jul 2023 19:47:17 +0900 Subject: [PATCH 1/2] fix docker-compose up --- .envrc | 3 +++ README.md | 7 ++++--- docker-compose.yml | 42 +++++++++++++++++++++++++++++++++++++++--- go.sum | 16 ---------------- 4 files changed, 46 insertions(+), 22 deletions(-) create mode 100644 .envrc diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..fe487d9 --- /dev/null +++ b/.envrc @@ -0,0 +1,3 @@ +ROOM_HOST=localhost:10000 +REDIS_HOST=localhost:6379 +GRPC_PORT=10001 \ No newline at end of file diff --git a/README.md b/README.md index 05e9582..3910017 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,12 @@ This project is experimental and not ready for production ## Quick Start -Docker導入済み環境ではDockerComposeを用いて簡単にiguagile-engineを動かすことができます. - ```bash git clone git@github.com:iguagile/iguagile-engine.git cd iguagile-engine docker-compose up -# connect to tcp 4000 port. +curl http://localhost:8080/api/v1/rooms -X POST -d '{"application_name": "example", "version": "0.1.0", "password": "IiHqswslP2Yr3b3P", "max_user": 4, "information": {}}' +# response +# {"success":true,"result":{"room_id":65536,"require_password":false,"max_user":0,"connected_user":0,"server":{"server":"192.168.10.5","port":10000},"token":"BHB2dVhpT1GcP4IKN9iLJw==","information":null},"error":""} +# connect to 192.168.10.5:10000 ``` diff --git a/docker-compose.yml b/docker-compose.yml index 0b7fe88..9416aac 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,13 +3,49 @@ version: '3.1' services: redis: image: redis:latest - ports: - - "6379:6379" + networks: + - iguagile-network + healthcheck: + test: ["CMD", "redis-cli", "ping"] iguagile-api: - image: ghcr.io/iguagile/iguagile-engine:latest + image: ghcr.io/iguagile/iguagile-api:latest ports: - "8080:80" environment: REDIS_HOST: redis:6379 + GRPC_HOST: iguagile-engine:10000 + networks: + - iguagile-network + depends_on: + redis: + condition: service_healthy + + iguagile-engine: +# # comments out for local development +# build: +# context: . +# dockerfile: Dockerfile + image: ghcr.io/iguagile/iguagile-engine:latest + + ports: + - "14000:4000" + - "15000:5000" + networks: + iguagile-network: + ipv4_address: 192.168.10.5 + environment: + ROOM_HOST: 192.168.10.5:10000 # require other container connect hostname + REDIS_HOST: redis:6379 # register server pub/sub and id generator + GRPC_PORT: 10001 # server register rpc + depends_on: + redis: + condition: service_healthy +networks: + iguagile-network: + driver: bridge + ipam: + driver: default + config: + - subnet: 192.168.10.0/24 \ No newline at end of file diff --git a/go.sum b/go.sum index 57a5ec4..41b177e 100644 --- a/go.sum +++ b/go.sum @@ -7,10 +7,6 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/iguagile/iguagile-room-proto v0.0.0-20230322040411-8bfc4aa9dbc9 h1:OpYztWwvSDhhZpAwcao2im21X785yOoq1qDYoXIvXC0= -github.com/iguagile/iguagile-room-proto v0.0.0-20230322040411-8bfc4aa9dbc9/go.mod h1:pTWYKVy4FbTaKE6WtSXNM+Afl4m1vjp2/VVdNbhWgPA= -github.com/iguagile/iguagile-room-proto v0.0.0-20230505035409-c32f3c4359f9 h1:kQ1Xg01me47hzX7ZkIDQTCuqO4HrwVwHPoJgSaUl/Y8= -github.com/iguagile/iguagile-room-proto v0.0.0-20230505035409-c32f3c4359f9/go.mod h1:TL3lpGYBF+mD2Ia3fsqV1/EhnfGtzJen+XGWWTajuoM= github.com/iguagile/iguagile-room-proto v0.0.0-20230622035817-c6a324325a06 h1:Yhl4+KVjQsTTwPVUwYqqrDizEeOEVVW3xRqB0ZkmbHY= github.com/iguagile/iguagile-room-proto v0.0.0-20230622035817-c6a324325a06/go.mod h1:LZFMietn7XTkDTqBBbRaX/FyQ5cOGSnU5RTq6jzUxD8= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= @@ -18,27 +14,15 @@ github.com/minami14/go-bitarray v1.1.2 h1:E+Nd3dGG+aLhpVlSaJCC7Fh+3xGsaT0zbuvrrJ github.com/minami14/go-bitarray v1.1.2/go.mod h1:i6OBYFrV3uyrMpN1jwB2fAwLypdT9FIPAOiognNQ8wc= github.com/minami14/idgo v1.1.1 h1:hxokBHDQUqTMQhv2GOPFnLQ2QHHi5rGOKO7/woni17s= github.com/minami14/idgo v1.1.1/go.mod h1:oxMlMROuiDEbZbOHzGw5D0mpsv8oGuLsBjUrwiRn9po= -golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= -golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM= golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= -golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= -golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 h1:DdoeryqhaXp1LtT/emMP1BRJPHHKFi5akj/nbx/zNTA= -google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s= google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= -google.golang.org/grpc v1.55.0 h1:3Oj82/tFSCeUrRTg/5E/7d/W5A1tj6Ky1ABAuZuv5ag= -google.golang.org/grpc v1.55.0/go.mod h1:iYEXKGkEBhg1PjZQvoYEVPTDkHo1/bjTnfwTeGONTY8= -google.golang.org/grpc v1.56.0 h1:+y7Bs8rtMd07LeXmL3NxcTLn7mUkbKZqEpPhMNkwJEE= -google.golang.org/grpc v1.56.0/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= From 063c6e1f5fb2e0d440a3700dc14d922f42e1db15 Mon Sep 17 00:00:00 2001 From: bootjp / Yoshiaki Ueda Date: Sat, 15 Jul 2023 19:51:22 +0900 Subject: [PATCH 2/2] update environ doc --- .envrc | 5 +++-- docker-compose.yml | 5 ++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.envrc b/.envrc index fe487d9..3feceb4 100644 --- a/.envrc +++ b/.envrc @@ -1,3 +1,4 @@ +# for local development ROOM_HOST=localhost:10000 -REDIS_HOST=localhost:6379 -GRPC_PORT=10001 \ No newline at end of file +REDIS_HOST=localhost:6379 # when use docker-compose use redis exposed port +GRPC_PORT=10001 diff --git a/docker-compose.yml b/docker-compose.yml index 9416aac..a95652f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -27,13 +27,12 @@ services: # context: . # dockerfile: Dockerfile image: ghcr.io/iguagile/iguagile-engine:latest - ports: - "14000:4000" - "15000:5000" networks: iguagile-network: - ipv4_address: 192.168.10.5 + ipv4_address: 192.168.10.5 # assign for connect by host machine environment: ROOM_HOST: 192.168.10.5:10000 # require other container connect hostname REDIS_HOST: redis:6379 # register server pub/sub and id generator @@ -48,4 +47,4 @@ networks: ipam: driver: default config: - - subnet: 192.168.10.0/24 \ No newline at end of file + - subnet: 192.168.10.0/24