将mysql docker容器连接到外部应用程序

yvgpqqbh  于 2021-06-23  发布在  Mysql
关注(0)|答案(0)|浏览(347)

我正在尝试连接一个正在docker容器上运行的mysql数据库服务器到一个对话。我正在开发一个聊天机器人。docker容器安装在带有hypriot的树莓皮上。正在谈话中。我有一个应用程序

  1. var mysql = require('promise-mysql');
  2. var db = {
  3. host: "???",
  4. user: "root",
  5. password: "password",
  6. database: "TimeTracker"
  7. };
  8. var pool = mysql.createPool(db);
  9. function ConnectToMysql(context, req, res) {
  10. console.log("==> ConnectToMysql");
  11. var query = "SELECT * FROM BTSTT";
  12. return pool.query(query, [])
  13. .then(function(rows) {
  14. console.log("== ConnectToMysql rows:%o",rows);
  15. if (rows.length) {
  16. var row = rows[0];
  17. return res.say(row);
  18. } else {
  19. return false;
  20. }
  21. })
  22. .catch(function(err) {
  23. console.log("<== ConnectToMysql catch:"+err.message);
  24. return false;
  25. });
  26. }

我已经为portainer容器打开了端口,因此可以在ulimi.ddns.net远程访问它。mysql容器的ip地址是172.17.x.x。如果我当前尝试使用raspberry pi的ip 192.168.x.x或mysql容器的ip运行脚本,则会出现超时错误。
两件事:1。有人建议我在容器上运行mysql数据库,然后将信息存储在外部硬盘上。我还没有设置这后面的部分,但如果有一个更好的想法,如何做到这一点,我很乐意听到。
2我需要所有这一切都要设置,以便我可以从一个不同的网络远程访问,然后在那里它被托管。最终我计划将服务器切换到云平台,但目前我需要将其设置为具有相同的功能。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题