-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: ERROR: Invalid interpolation format [...] when installing using the script #12
Comments
@almosnow, if it helps, I saw this error with Ubuntu 18.04, then 20.04, but when I tried with 22.04, I get past that error. I don't know what caused it. I just assumed it might be related to me using too-new or too-old of an OS, since that is often a problem. With that said, it still doesn't work. Using Ubuntu 22.04, there are several
Even if you can get it to come up, for example using the gitpod example project, the default username/password do NOT appear to be Bottom line, I'm fresh off the street with this project - I just learned about it. Unfortunately this seems to be a non-starter in every way one might try to evaluate it. Unless I'm missing something? Maybe I just caught this project on a bad day? |
My experience as well and I really really really really wanted this to work. That's not to discourage AT's team, this seems like a great product, just work on polishing the rough edges! |
@almosnow hi, please make sure you use docker compose v2 and have another try.
|
I've found a fix, is the install.sh script hosted somewhere in the repo? |
Thank you very much for your feedback. I've updated the gitpod compose file to make sure the db initialization complete before you can access the site. The default username/password are indeed As for the local docker-compose setup, please make sure you use docker compose v2 and have another try:
P.S. I haven't encountered the container unhealthy errors. Does the cpu/memory in high load? Maybe you can tear down and recreate the service using |
The install script is in https://github.com/apitable/apitable.github.io/blob/main/install.sh. But I still think the root issue lies in incompatible version of docker-compose. |
Please see the submitted PR, I have no idea how you can get a But, I've found that the new preferred syntax is The PR just changes this bits. |
Generally we don't use the https://docs.docker.com/engine/install/ubuntu/
Actually I think you are right that we shoud embrace the new https://github.com/docker/compose
Let's merge your pr and see if the cure is worse than the disease ;-) |
it works perfectly BUT I tried it on an Ubuntu 22.04 box and it doesn't work with the docker coming from apt (but it may work with docker compose). After you upgrade to the latest docker/docker-compose combo it runs with no issues! However, I think the most robust solution would be to add a check at the top of the script, if there's docker-compose v2 use that one, if there's I will submit a PR for this later on 😄. |
I think it won't be a problem if we stick with the |
This is great, thanks all! Good to see this project is under active development and maintenance. With the help of the comments above, I made a bunch of progress. SpecsFirst, on specs. I typically spin up a new VM and give it 2 vCPU's, 2GB of RAM, and 120GB disk to start. I did see this setup was struggling with that, so I gave it 4 vCPU's and 8GB of RAM. With that, RAM consumption seemed to be around 4 or 5GB. Setting up v2 of Docker ComposeNext, by-default Ubuntu 22.04 is using @almosnow, this is what you mentioned about the default Ubuntu repositories lagging behind. This is how you could get the newer version. Fixing the
|
Thanks. @almosnow submited a pr changed the |
If I can ask one more question. Both container for service "mysql" is unhealthy This is a fresh Ubuntu 22.04 machine and all I've done was install |
Is it possible for the vm to use more cpu or memory? It's weird that mysql can't pass the health-check. And please tell us how long would the mysql become unhealthy. |
I didn't time it exactly, but it runs for probably :10 minutes. I did give the VM 16GB of RAM. It still only seems to use 5-7GB. For disk space, it's only using 13GB, so this doesn't seem to be resource-bound. It it helps, here is the output of
If I run
|
Could you help us check the log of the mysql container by running |
No firewall or anything peculiar. This is a pretty barebone Ubuntu 22.04 "cloud image" running in a ProxMox hypervisor. That error message seems to be a regular MySQL error where only certain IP addresses can connect. Perhaps the NAT network in my Docker instance isn't as expected? If it helps, here is a [
{
"Name": "apitable_apitable",
"Id": "231dfcae55b5562e93873dae00238486998c102a3002d59bfcb181bf484d20a2",
"Created": "2022-12-26T15:42:33.485665942Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"0e50224ed5faa0c10d735ca8fde8351fea70f34c85e79df2100e078bb8e6bd71": {
"Name": "apitable-minio-1",
"EndpointID": "760b051f46c1d0c6aa12a40874d48385cf0c86544d80a3c6ea07b6f1d7133b38",
"MacAddress": "02:42:ac:12:00:08",
"IPv4Address": "172.18.0.8/16",
"IPv6Address": ""
},
"117f22ecce6470e420ed65f6b1ed8ef76b895b950e257a8acc99d523573b6150": {
"Name": "apitable-web-server-1",
"EndpointID": "e466f2347639370d9d60f286c7dd77869e73e6bcdf6a2933cb1d2c0d111747cd",
"MacAddress": "02:42:ac:12:00:0b",
"IPv4Address": "172.18.0.11/16",
"IPv6Address": ""
},
"8c57fffa73224a2beaab1443057099bbf9acc5107a26841430b4853eb7406577": {
"Name": "apitable-redis-1",
"EndpointID": "2bf4aac5640c48142ae9eb3ef655ee7476d36980570680877c208cf7772979c5",
"MacAddress": "02:42:ac:12:00:05",
"IPv4Address": "172.18.0.5/16",
"IPv6Address": ""
},
"ad1c7693b64bafc97e4f31c2c37f4f068d2a313850a29e19bfa170de5bb5fb38": {
"Name": "apitable-backend-server-1",
"EndpointID": "a2de8f75ee5f0c0fbba8972fe2996e3e75d2c28c9c3452808467ba4d8591d54c",
"MacAddress": "02:42:ac:12:00:06",
"IPv4Address": "172.18.0.6/16",
"IPv6Address": ""
},
"c0d903e4924a27fb48316e9b695f5c77c2e843df840ab27d4e1ac3d3f00a5608": {
"Name": "apitable-room-server-1",
"EndpointID": "78dd62581b3295845da92c9cc167a0dc5908de8dd7c03d5fa81025a93f184393",
"MacAddress": "02:42:ac:12:00:04",
"IPv4Address": "172.18.0.4/16",
"IPv6Address": ""
},
"c4e4e588e42fc528e2c4118080b0275645cfa2afc2e81300e4ce9abaddae924e": {
"Name": "apitable-imageproxy-server-1",
"EndpointID": "a39b0a6d1cd8e6e48080e8b1bcdf469491fdf486467bd703b0bc7e8f2426258f",
"MacAddress": "02:42:ac:12:00:02",
"IPv4Address": "172.18.0.2/16",
"IPv6Address": ""
},
"cb8e995896933c0aaf4e367d9cbf8a32faab8066db071456cc1074ee65017df7": {
"Name": "apitable-gateway-1",
"EndpointID": "4d572fdc4fe06931352b11aeb7c658b479bda60778dce06ca2e6968dae3d2b3c",
"MacAddress": "02:42:ac:12:00:0d",
"IPv4Address": "172.18.0.13/16",
"IPv6Address": ""
},
"ed2c3f703da8dad3fdf517a62b86ec6067807d88a9baa54614b6040027d2a3b1": {
"Name": "apitable-rabbitmq-1",
"EndpointID": "c292dd523ef2ea6fbe43d4a43232361d92e0e01705544e9738cb2402745e7fc5",
"MacAddress": "02:42:ac:12:00:0a",
"IPv4Address": "172.18.0.10/16",
"IPv6Address": ""
},
"f4d292a1dd934f0959106e943b0bf8c1d63d7fac8a11abdb1318bc3457bfd880": {
"Name": "apitable-mysql-1",
"EndpointID": "21e32d63c246e51cf465780a78f4ea2e644c5a263deb37c7f1e7ab739d4e82c1",
"MacAddress": "02:42:ac:12:00:09",
"IPv4Address": "172.18.0.9/16",
"IPv6Address": ""
},
"fe4e455087f7a79a711bd165211d1e03c1d6128497fcc0bfb76d6fc0e4103ba5": {
"Name": "apitable-socket-server-1",
"EndpointID": "23dda5e8e0ad394fe9f9d24c5898b0519af49801d58b600144c9a0d8d175befb",
"MacAddress": "02:42:ac:12:00:03",
"IPv4Address": "172.18.0.3/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {
"com.docker.compose.network": "apitable",
"com.docker.compose.project": "apitable",
"com.docker.compose.version": "2.14.1"
}
}
] And then, here is the result of that
|
@RobSeder What's the output of the following command?
|
Result is this:
|
How about |
For that, I see this:
|
If it helps, if I start a bash shell in the
I assume there should be an |
Do you have |
Yes, the WARN[0000] The "UID" variable is not set. Defaulting to a blank string.
WARN[0000] The "GID" variable is not set. Defaulting to a blank string.
WARN[0000] The "UID" variable is not set. Defaulting to a blank string.
WARN[0000] The "GID" variable is not set. Defaulting to a blank string.
WARN[0000] The "UID" variable is not set. Defaulting to a blank string.
WARN[0000] The "GID" variable is not set. Defaulting to a blank string.
WARN[0000] The "UID" variable is not set. Defaulting to a blank string.
WARN[0000] The "GID" variable is not set. Defaulting to a blank string.
name: apitable
services:
backend-server:
depends_on:
minio:
condition: service_started
mysql:
condition: service_started
rabbitmq:
condition: service_started
redis:
condition: service_started
socket-server:
condition: service_started
environment:
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: aws
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
TZ: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
expose:
- "8081"
healthcheck:
test:
- CMD-SHELL
- curl -sS 'http://localhost:8081' || exit 1
timeout: 10s
interval: 30s
retries: 10
image: docker.io/apitable/backend-server:latest
networks:
apitable: null
ports:
- mode: ingress
target: 8081
published: "8081"
protocol: tcp
pull_policy: always
restart: always
gateway:
depends_on:
backend-server:
condition: service_started
imageproxy-server:
condition: service_started
minio:
condition: service_started
mysql:
condition: service_started
room-server:
condition: service_started
socket-server:
condition: service_started
web-server:
condition: service_started
environment:
TZ: Asia/Singapore
image: openresty/openresty:1.21.4.1-3-buster-fat
networks:
apitable: null
ports:
- mode: ingress
target: 80
published: "80"
protocol: tcp
- mode: ingress
target: 443
published: "443"
protocol: tcp
pull_policy: always
restart: always
volumes:
- type: bind
source: /opt/apitable/gateway/conf.d
target: /etc/nginx/conf.d
bind:
create_host_path: true
imageproxy-server:
environment:
BASEURL: http://minio:9000
TZ: Asia/Singapore
expose:
- "8080"
image: docker.io/apitable/imageproxy-server:latest
networks:
apitable: null
pull_policy: always
restart: always
init-data-minio:
depends_on:
minio:
condition: service_healthy
environment:
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
TZ: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
image: docker.io/apitable/init-template-minio:latest
networks:
apitable: null
pull_policy: always
init-data-mysql:
command:
- /bin/bash
- -c
- |
sh run.sh
depends_on:
init-db:
condition: service_completed_successfully
mysql:
condition: service_healthy
environment:
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
TZ: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
image: docker.io/apitable/init-template-mysql:latest
networks:
apitable: null
pull_policy: always
init-db:
depends_on:
mysql:
condition: service_healthy
environment:
ACTION: update
DATABASE_TABLE_PREFIX: apitable_
DB_HOST: mysql
DB_NAME: apitable
DB_PASSWORD: apitable@com
DB_PORT: "3306"
DB_USERNAME: root
TZ: Asia/Singapore
image: docker.io/apitable/init-db:latest
networks:
apitable: null
pull_policy: always
minio:
command:
- server
- /data
environment:
MINIO_ACCESS_KEY: apitable
MINIO_SECRET_KEY: apitable@com
TZ: Asia/Singapore
expose:
- "9000"
healthcheck:
test:
- CMD-SHELL
- curl -sS 'http://localhost:9000' || exit 1
timeout: 10s
interval: 30s
retries: 5
image: minio/minio:RELEASE.2021-03-17T02-33-02Z
networks:
apitable: null
ports:
- mode: ingress
target: 9000
published: "9000"
protocol: tcp
pull_policy: always
restart: always
user: ':'
volumes:
- type: bind
source: /opt/apitable/.data/minio/data
target: /data
bind:
create_host_path: true
- type: bind
source: /opt/apitable/.data/minio/config
target: /root/.minio
bind:
create_host_path: true
mysql:
command:
- --default-authentication-plugin=mysql_native_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --sql_mode=IGNORE_SPACE,NO_ENGINE_SUBSTITUTION
- --lower_case_table_names=2
environment:
MYSQL_DATABASE: apitable
MYSQL_ROOT_PASSWORD: apitable@com
TZ: Asia/Singapore
expose:
- "3306"
healthcheck:
test:
- CMD-SHELL
- mysql apitable -uroot -papitable@com -e 'SELECT 1;'
timeout: 10s
interval: 30s
retries: 10
image: mysql:8.0.29
networks:
apitable: null
ports:
- mode: ingress
target: 3306
published: "3306"
protocol: tcp
pull_policy: always
restart: always
user: ':'
volumes:
- type: bind
source: /opt/apitable/.data/mysql
target: /var/lib/mysql
bind:
create_host_path: true
rabbitmq:
environment:
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_USERNAME: apitable-user
expose:
- "5671"
- "5672"
- "15672"
image: rabbitmq:3-management
networks:
apitable: null
ports:
- mode: ingress
target: 5671
published: "5671"
protocol: tcp
- mode: ingress
target: 5672
published: "5672"
protocol: tcp
- mode: ingress
target: 15672
published: "15672"
protocol: tcp
pull_policy: always
restart: always
user: ':'
volumes:
- type: bind
source: /opt/apitable/.data/rabbitmq
target: /var/lib/rabbitmq
bind:
create_host_path: true
redis:
command:
- redis-server
- --appendonly
- "yes"
- --requirepass
- apitable@com
environment:
TZ: Asia/Singapore
expose:
- "6379"
image: redis:5
networks:
apitable: null
ports:
- mode: ingress
target: 6379
published: "6379"
protocol: tcp
pull_policy: always
restart: always
user: ':'
volumes:
- type: bind
source: /opt/apitable/.data/redis
target: /data
bind:
create_host_path: true
room-server:
depends_on:
mysql:
condition: service_started
redis:
condition: service_started
environment:
API_MAX_MODIFY_RECORD_COUNTS: "30"
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
INSTANCE_MAX_MEMORY: 4096M
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
NODE_ENV: apitable
NODE_OPTIONS: --max-old-space-size=2048 --max-http-header-size=80000
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
expose:
- "3333"
- "3334"
image: docker.io/apitable/room-server:latest
networks:
apitable: null
pull_policy: always
restart: always
scheduler-server:
depends_on:
mysql:
condition: service_started
redis:
condition: service_started
environment:
API_MAX_MODIFY_RECORD_COUNTS: "30"
API_PROXY: http://backend-server:8081
APPLICATION_NAME: SCHEDULE_SERVER
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENABLE_SCHED: "true"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
INSTANCE_MAX_MEMORY: 4096M
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
NODE_ENV: apitable
NODE_OPTIONS: --max-old-space-size=2048 --max-http-header-size=80000
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
expose:
- "3333"
- "3334"
image: docker.io/apitable/room-server:latest
networks:
apitable: null
pull_policy: always
restart: always
socket-server:
depends_on:
rabbitmq:
condition: service_started
redis:
condition: service_started
environment:
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
NODE_MEMORY_RATIO: "80"
NOTIFICATION_PORT: "3002"
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PORT: "3001"
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
SYS_MEMORY_RATIO: "100"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
expose:
- "3001"
- "3002"
- "3005"
- "3007"
image: docker.io/apitable/socket-server:latest
networks:
apitable: null
pull_policy: always
restart: always
web-server:
depends_on:
backend-server:
condition: service_healthy
environment:
API_PROXY: http://backend-server:8081
AUTH0_ENABLED: "false"
AWS_ACCESS_KEY: apitable
AWS_ACCESS_SECRET: apitable@com
AWS_ENDPOINT: http://minio:9000
AWS_REGION: us-east-1
BACKEND_BASE_URL: http://backend-server:8081/api/v1/
BACKEND_INFO_URL: http://backend-server:8081/api/v1/client/info
CALLBACK_DOMAIN: ""
CORS_ORIGINS: '*'
DATA_PATH: .
DATABASE_TABLE_PREFIX: apitable_
DECORATOR_ENABLED: "false"
ENV: apitable
IMAGE_BACKEND_SERVER: apitable/backend-server:latest
IMAGE_GATEWAY: openresty/openresty:1.21.4.1-3-buster-fat
IMAGE_IMAGEPROXY_SERVER: apitable/imageproxy-server:latest
IMAGE_INIT_DATA_MINIO: apitable/init-template-minio:latest
IMAGE_INIT_DATA_MYSQL: apitable/init-template-mysql:latest
IMAGE_INIT_DB: apitable/init-db:latest
IMAGE_MINIO: minio/minio:RELEASE.2021-03-17T02-33-02Z
IMAGE_MYSQL: mysql:8.0.29
IMAGE_POLL_POLICY: always
IMAGE_RABBITMQ: rabbitmq:3-management
IMAGE_REDIS: redis:5
IMAGE_REGISTRY: docker.io
IMAGE_ROOM_SERVER: apitable/room-server:latest
IMAGE_SOCKET_SERVER: apitable/socket-server:latest
IMAGE_WEB_SERVER: apitable/web-server:latest
MAIL_ENABLED: "false"
MINIO_ACCESS_KEY: apitable
MINIO_BUCKET: assets
MINIO_ENDPOINT: http://minio:9000
MINIO_SECRET_KEY: apitable@com
MYSQL_DATABASE: apitable
MYSQL_HOST: mysql
MYSQL_PASSWORD: apitable@com
MYSQL_PORT: "3306"
MYSQL_ROOT_PASSWORD: apitable@com
MYSQL_USERNAME: root
NEST_GRPC_ADDRESS: static://room-server:3334
NEST_GRPC_URL: room-server:3334
OSS_CACHE_TYPE: minio
OSS_ENABLED: "true"
OSS_HOST: /assets
OSS_TYPE: QNY1
PUBLIC_URL: ""
RABBITMQ_DEFAULT_PASS: fkJifev64y^sbxRl
RABBITMQ_DEFAULT_USER: apitable-user
RABBITMQ_HOST: rabbitmq
RABBITMQ_PASSWORD: fkJifev64y^sbxRl
RABBITMQ_PORT: "5672"
RABBITMQ_USERNAME: apitable-user
RABBITMQ_VHOST: /
REDIS_DB: "0"
REDIS_HOST: redis
REDIS_PASSWORD: apitable@com
REDIS_PORT: "6379"
SERVER_DOMAIN: ""
SMS_ENABLED: "false"
SOCKET_DOMAIN: http://socket-server:3001/socket
SOCKET_GRPC_URL: socket-server:3007
SOCKET_RECONNECTION_ATTEMPTS: "10"
SOCKET_RECONNECTION_DELAY: "500"
SOCKET_TIMEOUT: "5000"
SOCKET_URL: http://socket-server:3002
SPRINGFOX_ENABLED: "false"
TEMPLATE_PATH: ./static/web_build/index.html
TEMPLATE_SPACE: spcNTxlv8Drra
TIMEZONE: Asia/Singapore
USE_CUSTOM_PUBLIC_FILES: "true"
VK_ASSETS_LTD_URL: assets
expose:
- "8080"
image: docker.io/apitable/web-server:latest
networks:
apitable: null
pull_policy: always
restart: always
networks:
apitable:
name: apitable_apitable
driver: bridge |
What if you execute the following sql? It's peculiar that mysql don't initialize the root password. use mysql;
select host from user where user='root'; |
I get this:
|
I think maybe you forget the |
Sorry, yes - my bad!
|
I suspect there is something wrong during the first start of mysql, as in my clean setup the mysql will indeed create a database called
Please do the following command to re-initialize the mysql: sudo rm -fr .data/mysql/
docker compose up -d mysql
# wait for the mysql to start, retry if ERROR 2003 (HY000): Can't connect to MySQL server on 'mysql:3306' (111)
docker compose exec -it mysql mysql -u root -h mysql -papitable@com mysql -e 'select host from user where user="root";' |
Still same result. For that command, it says access denied for that IP address. I've rebuilt a VM a few times now and it's been the same every time, starting from that |
As we use containers to run all the service, it is highly unlikely that it is os related. Let's do a clean setup one more time: # tear down all running service
docker compose down -v
# make sure no container running
docker ps
# make sure to remove the mysql data directory
sudo rm -fr .data/mysql/
# re-initialize the mysql
docker compose up -d mysql
# wait for the mysql to start, retry if ERROR 2003 (HY000): Can't connect to MySQL server on 'mysql:3306' (111)
docker compose exec -it mysql mysql -u root -h mysql -papitable@com mysql -e 'select host from user where user="root";' |
hi, I just successfully setup the apitable using ubuntu 22.04. Feel free to join our https://discord.gg/TwNb9nfdBU for direct message.
|
@networkhermit I did clean everything one more time. This time, one thing I did different was to do a |
I'm glad you can login now. Feel free to create new bug report if you encounter something wrong. |
Describe the bug
Whenever I try to install APITable using the provided script, it fails with the following error:
ERROR: Invalid interpolation format for "web-server" option in service "services": "${IMAGE_POLL_POLICY:-missing}"
To Reproduce
Try to run
curl https://apitable.github.io/install.sh | bash
on an Ubuntu box.Expected behavior
Start using APITable
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: