Comments (34)
@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 docker-compose
errors like:
ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy.
ERROR: for init-db Container "ddefd2f2391e" is unhealthy.
ERROR: for init-db Container "ddefd2f2391e" is unhealthy.
ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy.
ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy.
ERROR: for init-db Container "ddefd2f2391e" is unhealthy.
ERROR: Encountered errors while bringing up the project.
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 [email protected]
/Apitable2022
as described in the main documentations, and you can't "reset" the password unless you own [email protected]
email address. So, it DOES come up in the gitpod environment, but you are stuck at a login screen with no way to login.
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?
from apitable.
Generally we don't use the docker-compose
package in the official ubuntu repo, as it is too outdated. I recommend you use the following instructions to install docker-compose v2 (the package is called docker-compose-plugin
):
https://docs.docker.com/engine/install/ubuntu/
$ apt list docker-compose docker-compose-plugin
Listing... Done
docker-compose/bionic 1.17.1-2 all
docker-compose-plugin/bionic 2.14.1~ubuntu-bionic amd64 [upgradable from: 2.12.2~ubuntu-bionic]
Actually I think you are right that we shoud embrace the new docker compose
syntax, but the docker-compose
is so ubiquitous that you can still use the shortcut even if you use docker compose v2:
https://github.com/docker/compose
$ which docker-compose
/usr/local/bin/docker-compose
Let's merge your pr and see if the cure is worse than the disease ;-)
from apitable.
I've found a fix, is the install.sh script hosted somewhere in the repo?
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.
from apitable.
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.
Specs
First, 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 Compose
Next, by-default Ubuntu 22.04 is using docker-compose
1.29.2
. For getting v2 of docker-compose
, I followed the Ubuntu instructions here to point to their repository. Then, did an apt update
and apt install docker-compose-plugin
and found I had 2.14.1
.
@almosnow, this is what you mentioned about the default Ubuntu repositories lagging behind. This is how you could get the newer version.
Fixing the path
However, if I just did docker-compose
, it was pointing to the version in the /usr/bin/docker-compose
. So, to have the new version be the default, I modified /etc/bash.bashrc
and added export PATH="/usr/libexec/docker/cli-plugins:$PATH"
towards the top. After a reboot (or source
-ing the file) I now am using the v2 of docker-compose
.
It would seem I'm off the races. Thanks all!
from apitable.
this seems to be a non-starter in every way one might try to evaluate it
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!
from apitable.
I think it won't be a problem if we stick with the docker compose
syntax. I understand your solution, but let's just live with the current install script and gather more evidence before we move. The version check is fairly trivial but maintaining the mac/linux dual compatible bash script is not. Just keep it simple.
from apitable.
hi, I just successfully setup the apitable using ubuntu 22.04. Feel free to join our https://discord.gg/TwNb9nfdBU for direct message.
$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
$ apt list docker-ce docker-compose-plugin
Listing... Done
docker-ce/jammy 5:20.10.22~3-0~ubuntu-jammy amd64 [upgradable from: 5:20.10.21~3-0~ubuntu-jammy]
docker-compose-plugin/jammy 2.14.1~ubuntu-jammy amd64 [upgradable from: 2.12.2~ubuntu-jammy]
$ docker compose exec -it mysql mysql -u root -h mysql -papitable@com mysql -e 'show databases; select host from user where user="root";'
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.
mysql: [Warning] Using a password on the command line interface can be insecure.
+--------------------+
| Database |
+--------------------+
| apitable |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
+-----------+
| host |
+-----------+
| % |
| localhost |
+-----------+
from apitable.
I'm glad you can login now. Feel free to create new bug report if you encounter something wrong.
from apitable.
@almosnow hi, please make sure you use docker compose v2 and have another try.
$ docker-compose version
Docker Compose version v2.10.0-gitpod.0
from apitable.
I've found a fix, is the install.sh script hosted somewhere in the repo?
from apitable.
@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
docker-compose
errors like:ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy. ERROR: for init-db Container "ddefd2f2391e" is unhealthy. ERROR: for init-db Container "ddefd2f2391e" is unhealthy. ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy. ERROR: for init-data-mysql Container "ddefd2f2391e" is unhealthy. ERROR: for init-db Container "ddefd2f2391e" is unhealthy. ERROR: Encountered errors while bringing up the project.
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
[email protected]
/Apitable2022
as described in the main documentations, and you can't "reset" the password unless you own[email protected]
email address. So, it DOES come up in the gitpod environment, but you are stuck at a login screen with no way to login.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?
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 [email protected]
/Apitable2022
as described. Also, make sure you access port 80 from gitpod.
As for the local docker-compose setup, please make sure you use docker compose v2 and have another try:
$ docker-compose version
Docker Compose version v2.10.0-gitpod.0
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 docker-compose down -v
and docker-compose up -d
, or simply docker-compose up -d
to retry.
from apitable.
Please see the submitted PR,
I have no idea how you can get a docker-compose
using v2, mine stays in v1 no matter how much I try to update,
But, I've found that the new preferred syntax is docker compose
and that one works well and is the one that's future-proof,
The PR just changes this bits.
from apitable.
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 docker compose
then use it.
I will submit a PR for this later on 😄.
from apitable.
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.
Specs
First, 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 Compose
Next, by-default Ubuntu 22.04 is using
docker-compose
1.29.2
. For getting v2 ofdocker-compose
, I followed the Ubuntu instructions here to point to their repository. Then, did anapt update
andapt install docker-compose-plugin
and found I had2.14.1
.@almosnow, this is what you mentioned about the default Ubuntu repositories lagging behind. This is how you could get the newer version.
Fixing the
path
However, if I just did
docker-compose
, it was pointing to the version in the/usr/bin/docker-compose
. So, to have the new version be the default, I modified/etc/bash.bashrc
and addedexport PATH="/usr/libexec/docker/cli-plugins:$PATH"
towards the top. After a reboot (orsource
-ing the file) I now am using the v2 ofdocker-compose
.It would seem I'm off the races. Thanks all!
Thanks. @almosnow submited a pr changed the docker-compose
syntax to the v2 docker compose
, I also think it is more natural to use that. Currently the install script uses docker compose
, so it's ok if you don't have docker-compose
in your PATH, and you can use docker compose version
to check.
from apitable.
If I can ask one more question. Both docker-compose up -d
and docker compose up -d
mostly work, but I get the same, single error on both:
container for service "mysql" is unhealthy
This is a fresh Ubuntu 22.04 machine and all I've done was install docker-compose
and run the install script. Any ideas?
from apitable.
If I can ask one more question. Both
docker-compose up -d
anddocker compose up -d
mostly work, but I get the same, single error on both:container for service "mysql" is unhealthyThis is a fresh Ubuntu 22.04 machine and all I've done was install
docker-compose
and run the install script. Any ideas?
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.
from apitable.
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 docker compose up
before it fails (again, after probably :10 minutes):
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5a6cc8dd05bc47e0b6e5948df61d684c` -> `minio/assets/space/2021/05/29/5a6cc8dd05bc47e0b6e5948df61d684c`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5a7b782d21464e93b6e0ffd95a949cb9` -> `minio/assets/space/2021/05/29/5a7b782d21464e93b6e0ffd95a949cb9`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5a840ed8661644f785fa4c2cc1ba50b6` -> `minio/assets/space/2021/05/29/5a840ed8661644f785fa4c2cc1ba50b6`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5a93e60e2bf841259ae005254e70894e` -> `minio/assets/space/2021/05/29/5a93e60e2bf841259ae005254e70894e`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5b59183cac164ee1a6ca36686c47b8ef` -> `minio/assets/space/2021/05/29/5b59183cac164ee1a6ca36686c47b8ef`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5b674427ed054e9b9392899ba13a051e` -> `minio/assets/space/2021/05/29/5b674427ed054e9b9392899ba13a051e`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5b92a135ed704557a30aaac41be85f8a` -> `minio/assets/space/2021/05/29/5b92a135ed704557a30aaac41be85f8a`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5b9baf7297cc498f9830c7f684f37572` -> `minio/assets/space/2021/05/29/5b9baf7297cc498f9830c7f684f37572`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5bc18d829f9347c5964366ed41746701` -> `minio/assets/space/2021/05/29/5bc18d829f9347c5964366ed41746701`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5be78b999c0d467a8ac43a456ff499cd` -> `minio/assets/space/2021/05/29/5be78b999c0d467a8ac43a456ff499cd`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5bf19df93f5048bb90e57ad49fd616e7` -> `minio/assets/space/2021/05/29/5bf19df93f5048bb90e57ad49fd616e7`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5c04cb28373d497ab17cfd2f22b6354a` -> `minio/assets/space/2021/05/29/5c04cb28373d497ab17cfd2f22b6354a`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5c254d0b0bee4878a069ff4367721277` -> `minio/assets/space/2021/05/29/5c254d0b0bee4878a069ff4367721277`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5c42327988f4491ab98b5d683fd84f2d` -> `minio/assets/space/2021/05/29/5c42327988f4491ab98b5d683fd84f2d`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5c49a3e7f2664613915df3e50a173ee2` -> `minio/assets/space/2021/05/29/5c49a3e7f2664613915df3e50a173ee2`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5c588367b6a8477bbc1e37de58cafed5` -> `minio/assets/space/2021/05/29/5c588367b6a8477bbc1e37de58cafed5`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5cf127340073469eae8d94dc56d83b6d` -> `minio/assets/space/2021/05/29/5cf127340073469eae8d94dc56d83b6d`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5d2f46ebc791418ea41d89efb5d70357` -> `minio/assets/space/2021/05/29/5d2f46ebc791418ea41d89efb5d70357`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5d346d9513524ea79553281a67513ab4` -> `minio/assets/space/2021/05/29/5d346d9513524ea79553281a67513ab4`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5d4208b5d86f4ef0bfcb825c7cca4a88` -> `minio/assets/space/2021/05/29/5d4208b5d86f4ef0bfcb825c7cca4a88`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5d5a14255a644821a79c91d0ffa19423` -> `minio/assets/space/2021/05/29/5d5a14255a644821a79c91d0ffa19423`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5d8b5480e12e41798603548970fff2bf` -> `minio/assets/space/2021/05/29/5d8b5480e12e41798603548970fff2bf`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5db6f97313d944d4afd63b6b1a58d7b4` -> `minio/assets/space/2021/05/29/5db6f97313d944d4afd63b6b1a58d7b4`
apitable-socket-server-1 | {"context":"ClientProxy","level":"info","message":"Available IP Pools:None","timestamp":"2022-12-26 16:45:05.001"}
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5e533934f50e497dbef367b33a538164` -> `minio/assets/space/2021/05/29/5e533934f50e497dbef367b33a538164`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5e5c9d10fe284c5cbf552201fcf70132` -> `minio/assets/space/2021/05/29/5e5c9d10fe284c5cbf552201fcf70132`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5e659b95bb30496ba047b8c5606f0009` -> `minio/assets/space/2021/05/29/5e659b95bb30496ba047b8c5606f0009`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5eac04d7d1c746dba72f7c9c31a21ebe` -> `minio/assets/space/2021/05/29/5eac04d7d1c746dba72f7c9c31a21ebe`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5eb354749335479993fe7cda57768e75` -> `minio/assets/space/2021/05/29/5eb354749335479993fe7cda57768e75`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/5ebe3ca1f49549cabecd41e9446ee4ff` -> `minio/assets/space/2021/05/29/5ebe3ca1f49549cabecd41e9446ee4ff`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/6007f97dc8634f3f8e0da631be7fcfe3` -> `minio/assets/space/2021/05/29/6007f97dc8634f3f8e0da631be7fcfe3`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/601526d7d4534f8f980520355e2a5a4e` -> `minio/assets/space/2021/05/29/601526d7d4534f8f980520355e2a5a4e`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/6027ca19805f44da8fdf2afd52235e08` -> `minio/assets/space/2021/05/29/6027ca19805f44da8fdf2afd52235e08`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/60393d27458c497dab296f88837128bd` -> `minio/assets/space/2021/05/29/60393d27458c497dab296f88837128bd`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/60502266c7da465a9de1fd96b43f42c3` -> `minio/assets/space/2021/05/29/60502266c7da465a9de1fd96b43f42c3`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/605062e7ea134dd181287ff33b49eb0d` -> `minio/assets/space/2021/05/29/605062e7ea134dd181287ff33b49eb0d`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/60c9dad5c82248ea955ce0897231c8a2` -> `minio/assets/space/2021/05/29/60c9dad5c82248ea955ce0897231c8a2`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/60fb057554ba4e5faf8ebaea4d37d224` -> `minio/assets/space/2021/05/29/60fb057554ba4e5faf8ebaea4d37d224`
apitable-init-data-minio-1 | `/minio/data/space/2021/05/29/60fe5d72d99143f8866b7614c4fc3086` -> `minio/assets/space/2021/05/29/60fe5d72d99143f8866b7614c4fc3086`
container for service "mysql" is unhealthy
root@apitable:/opt/apitable$
If I run docker compose up
AGAIN, it just takes about 2 minutes and then I see this error:
apitable-web-server-1 | Cannot find string key: report_reason_2
apitable-web-server-1 | Cannot find string key: report_reason_4
apitable-room-server-1 | 2022-12-26 16:53:45: [Nest] 54 - 12/26/2022, 4:53:45 PM ERROR [TypeOrmModule] Unable to connect to the database. Message: Host '172.18.0.4' is not allowed to connect to this MySQL server. Retrying (9)...
apitable-room-server-1 | 2022-12-26 16:53:45: Error: Host '172.18.0.4' is not allowed to connect to this MySQL server
apitable-room-server-1 | at Packet.asError (/app/node_modules/mysql2/lib/packets/packet.js:728:17)
apitable-room-server-1 | at ClientHandshake.execute (/app/node_modules/mysql2/lib/commands/command.js:29:26)
apitable-room-server-1 | at PoolConnection.handlePacket (/app/node_modules/mysql2/lib/connection.js:456:32)
apitable-room-server-1 | at PacketParser.onPacket (/app/node_modules/mysql2/lib/connection.js:85:12)
apitable-room-server-1 | at PacketParser.executeStart (/app/node_modules/mysql2/lib/packet_parser.js:75:16)
apitable-room-server-1 | at Socket.<anonymous> (/app/node_modules/mysql2/lib/connection.js:92:25)
apitable-room-server-1 | at Socket.emit (node:events:527:28)
apitable-room-server-1 | at Socket.emit (node:domain:475:12)
apitable-room-server-1 | at addChunk (node:internal/streams/readable:315:12)
apitable-room-server-1 | at readableAddChunk (node:internal/streams/readable:289:9)
apitable-room-server-1 | at Socket.Readable.push (node:internal/streams/readable:228:10)
apitable-room-server-1 | at TCP.onStreamRead [as _originalOnread] (node:internal/stream_base_commons:190:23)
apitable-room-server-1 | at TCP.<anonymous> (/app/node_modules/async-listener/glue.js:188:31)
apitable-room-server-1 | 2022-12-26 16:53:45: [Nest] 54 - 12/26/2022, 4:53:45 PM ERROR [ExceptionHandler] Host '172.18.0.4' is not allowed to connect to this MySQL server
apitable-room-server-1 | 2022-12-26 16:53:45: Error: Host '172.18.0.4' is not allowed to connect to this MySQL server
apitable-room-server-1 | at Packet.asError (/app/node_modules/mysql2/lib/packets/packet.js:728:17)
apitable-room-server-1 | at ClientHandshake.execute (/app/node_modules/mysql2/lib/commands/command.js:29:26)
apitable-room-server-1 | at PoolConnection.handlePacket (/app/node_modules/mysql2/lib/connection.js:456:32)
apitable-room-server-1 | at PacketParser.onPacket (/app/node_modules/mysql2/lib/connection.js:85:12)
apitable-room-server-1 | at PacketParser.executeStart (/app/node_modules/mysql2/lib/packet_parser.js:75:16)
apitable-room-server-1 | at Socket.<anonymous> (/app/node_modules/mysql2/lib/connection.js:92:25)
apitable-room-server-1 | at Socket.emit (node:events:527:28)
apitable-room-server-1 | at Socket.emit (node:domain:475:12)
apitable-room-server-1 | at addChunk (node:internal/streams/readable:315:12)
apitable-room-server-1 | at readableAddChunk (node:internal/streams/readable:289:9)
apitable-room-server-1 | at Socket.Readable.push (node:internal/streams/readable:228:10)
apitable-room-server-1 | at TCP.onStreamRead [as _originalOnread] (node:internal/stream_base_commons:190:23)
apitable-room-server-1 | at TCP.<anonymous> (/app/node_modules/async-listener/glue.js:188:31)
apitable-room-server-1 | 2022-12-26T16:53:45: PM2 log: App name:nest id:3 disconnected
apitable-room-server-1 | 2022-12-26T16:53:45: PM2 log: App [nest:3] exited with code [1] via signal [SIGINT]
apitable-room-server-1 | 2022-12-26T16:53:45: PM2 log: App [nest:3] will restart in 100ms
apitable-room-server-1 | 2022-12-26T16:53:45: PM2 log: App [nest:3] starting in -cluster mode-
apitable-room-server-1 | 2022-12-26T16:53:45: PM2 log: App [nest:3] online
apitable-init-data-minio-1 | `/minio/data/public/2021/08/25/2820cef9a6bb42ed92afaea3af5ce7e0` -> `minio/assets/public/2021/08/25/2820cef9a6bb42ed92afaea3af5ce7e0`
apitable-init-data-minio-1 | `/minio/data/public/2021/08/25/313be0678f624065b57a73adb09ef054` -> `minio/assets/public/2021/08/25/313be0678f624065b57a73adb09ef054`
apitable-init-data-minio-1 | `/minio/data/public/2021/12/03/05f64261f4e045e1bb6596f09b184fad` -> `minio/assets/public/2021/12/03/05f64261f4e045e1bb6596f09b184fad`
apitable-init-data-minio-1 | `/minio/data/public/2021/12/03/000365252fb048a6a0c60027e674fdd2` -> `minio/assets/public/2021/12/03/000365252fb048a6a0c60027e674fdd2`
apitable-init-data-minio-1 | `/minio/data/public/2021/12/03/32e7654a89714fc98cc0f255c4f1c6ef` -> `minio/assets/public/2021/12/03/32e7654a89714fc98cc0f255c4f1c6ef`
apitable-init-data-minio-1 | `/minio/data/public/2021/12/03/4d693321291342f281c996f5754de996` -> `minio/assets/public/2021/12/03/4d693321291342f281c996f5754de996`
apitable-init-data-minio-1 | `/minio/data/public/2021/12/03/4d1fc8b82bc147bd9d8a94401b8643d0` -> `minio/assets/public/2021/12/03/4d1fc8b82bc147bd9d8a94401b8643d0`
container for service "mysql" is unhealthy
from apitable.
Could you help us check the log of the mysql container by running docker compose logs mysql
? And do you know if there are firewall service or another mysql instance managed by systemd?
from apitable.
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 docker network inspect ...
of the apitable network:
[
{
"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 docker compose logs mysql
command, in-whole:
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.
apitable-mysql-1 | 2022-12-26 23:43:10+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.29-1.el8 started.
apitable-mysql-1 | 2022-12-26 23:43:10+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
apitable-mysql-1 | 2022-12-26 23:43:10+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.29-1.el8 started.
apitable-mysql-1 | 2022-12-26 23:43:10+08:00 [Note] [Entrypoint]: Initializing database files
apitable-mysql-1 | 2022-12-26T15:43:10.880851Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead.
apitable-mysql-1 | 2022-12-26T15:43:10.880871Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.29) initializing of server in progress as process 43
apitable-mysql-1 | 2022-12-26T15:43:10.882594Z 0 [Warning] [MY-010160] [Server] lower_case_table_names was set to 2, even though your the file system '/var/lib/mysql/' is case sensitive. Now setting lower_case_table_names to 0 to avoid future problems.
apitable-mysql-1 | 2022-12-26T15:43:11.068796Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
apitable-mysql-1 | 2022-12-26T15:45:39.656889Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
apitable-mysql-1 | 2022-12-26T15:59:02.245074Z 6 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
apitable-mysql-1 | 2022-12-27 00:24:23+08:00 [Note] [Entrypoint]: Database files initialized
apitable-mysql-1 | 2022-12-27 00:24:23+08:00 [Note] [Entrypoint]: Starting temporary server
apitable-mysql-1 | 2022-12-26T16:24:31.896537Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead.
apitable-mysql-1 | 2022-12-26T16:24:31.896564Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.29) starting as process 487
apitable-mysql-1 | 2022-12-26T16:24:32.364705Z 0 [Warning] [MY-010160] [Server] lower_case_table_names was set to 2, even though your the file system '/var/lib/mysql/' is case sensitive. Now setting lower_case_table_names to 0 to avoid future problems.
apitable-mysql-1 | 2022-12-26T16:24:36.966599Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
apitable-mysql-1 | 2022-12-26T16:25:55.196264Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
apitable-mysql-1 | 2022-12-26T16:27:16.606780Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
apitable-mysql-1 | 2022-12-26T16:27:16.606821Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
apitable-mysql-1 | 2022-12-26T16:27:26.341207Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
apitable-mysql-1 | 2022-12-26T16:27:33.311618Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: /var/run/mysqld/mysqlx.sock
apitable-mysql-1 | 2022-12-26T16:27:33.313063Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.29' socket: '/var/run/mysqld/mysqld.sock' port: 0 MySQL Community Server - GPL.
apitable-mysql-1 | 2022-12-27 00:27:33+08:00 [Note] [Entrypoint]: Temporary server started.
apitable-mysql-1 | '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'
apitable-mysql-1 | 2022-12-27 00:34:25+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.29-1.el8 started.
apitable-mysql-1 | 2022-12-27 00:34:33+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
apitable-mysql-1 | 2022-12-27 00:34:33+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.29-1.el8 started.
apitable-mysql-1 | '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'
apitable-mysql-1 | 2022-12-26T16:34:34.231544Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead.
apitable-mysql-1 | 2022-12-26T16:34:34.231565Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.29) starting as process 1
apitable-mysql-1 | 2022-12-26T16:34:34.233095Z 0 [Warning] [MY-010160] [Server] lower_case_table_names was set to 2, even though your the file system '/var/lib/mysql/' is case sensitive. Now setting lower_case_table_names to 0 to avoid future problems.
apitable-mysql-1 | 2022-12-26T16:34:34.621200Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
apitable-mysql-1 | 2022-12-26T16:34:40.330393Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
apitable-mysql-1 | 2022-12-26T16:34:42.052627Z 0 [System] [MY-010229] [Server] Starting XA crash recovery...
apitable-mysql-1 | 2022-12-26T16:34:42.064910Z 0 [System] [MY-010232] [Server] XA crash recovery finished.
apitable-mysql-1 | 2022-12-26T16:34:42.564638Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
apitable-mysql-1 | 2022-12-26T16:34:42.564682Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
apitable-mysql-1 | 2022-12-26T16:34:42.620121Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
apitable-mysql-1 | 2022-12-26T16:34:42.664337Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.29' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL.
apitable-mysql-1 | 2022-12-26T16:34:42.664296Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
from apitable.
@RobSeder What's the output of the following command?
$ docker compose exec -it mysql mysql -u root -h mysql -papitable@com mysql -e 'select host from user where user="root";'
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.
mysql: [Warning] Using a password on the command line interface can be insecure.
+-----------+
| host |
+-----------+
| % |
| localhost |
+-----------+
from apitable.
Result is this:
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.
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1130 (HY000): Host '172.18.0.9' is not allowed to connect to this MySQL server
from apitable.
How about docker compose exec -it mysql mysql -u root -h localhost -papitable@com mysql -e 'select host from user where user="root";'
?
from apitable.
For that, I see this:
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.
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
from apitable.
If it helps, if I start a bash shell in the apitable-mysql-1
container, I cannot use the username and password. However, if I just run mysql
and do a show databases;
, it shows this:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.04 sec)
I assume there should be an apitable
database maybe? So maybe the database didn't initialize correctly?
from apitable.
Do you have .env
along side the docker-compose.yaml
? Please check the output of docker compose config
.
from apitable.
Yes, the .env
is populated and in the same folder as the YAML. Running docker compose config
from that folder:
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
from apitable.
If it helps, if I start a bash shell in the
apitable-mysql-1
container, I cannot use the username and password. However, if I just runmysql
and do ashow databases;
, it shows this:mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.04 sec)
I assume there should be an
apitable
database maybe? So maybe the database didn't initialize correctly?
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';
from apitable.
I get this:
ERROR 1046 (3D000): No database selected
from apitable.
I think maybe you forget the use mysql;
line.
from apitable.
Sorry, yes - my bad!
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select host from user where user='root';
+-----------+
| host |
+-----------+
| localhost |
+-----------+
1 row in set (0.00 sec)
mysql>
from apitable.
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 apitable
:
apitable-mysql-1 | 2022-12-27 11:09:37+08:00 [Note] [Entrypoint]: Creating database apitable
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";'
from apitable.
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 install.sh
file. I'm not doing anything out of the ordinary. How do other people on Ubuntu run this? I'm on 22.04 - is that OK? If not, what is a known-good version?
from apitable.
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
install.sh
file. I'm not doing anything out of the ordinary. How do other people on Ubuntu run this? I'm on 22.04 - is that OK? If not, what is a known-good version?
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";'
from apitable.
@networkhermit I did clean everything one more time. This time, one thing I did different was to do a docker compose pull
first, then docker compose up
. Now, everything works! I can log into the website, and I get no mySQL errors. Thanks for the assist
from apitable.
Related Issues (20)
- Automation robot endpoint
- fix: The tooltip on the expand/collapse button in the workbench menu sidebar flickers when expanding or collapsing. HOT 1
- make dataenv后报错
- feat: The front-end code runs very sluggishly in the development environment, and we hope to optimize it.
- feat: Support for uploading articles and papers, summarizing them into tables, and importing them into the workspace with Copilot.
- question: The popup for inserting rows is slow
- question: 一个结合AI的场景式低代码平台
- Suggestion: This code repository is too large
- question: A brief description of your question
- Port 3306 connection issue HOT 1
- feat: 自动化操作不够方便
- feat: store data to my table base on webhook ?
- docs: not found automation guide
- question: 关于小程序展示表格的技术方案咨询 HOT 1
- fix: 添加描述中的输入框中,通过 @ 符号选择人的时候,打开的人员选择框会闪一下
- question: Ambiguity in the state of automation operation history
- question: Alternative tool for minio
- feat: Implement View Switching in Time Machine Preview Mode
- docs: 希望在文档里标注下运行需要的最小配置参数
- Cannot login using the email and password
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apitable.