og

记录下后端代码pymongo连不上数据库问题

Snipaste_20220321_154746.jpg

之前最初开发是数据库,前端后端都放在了windows电脑上,之后觉得数据库应该放在虚拟机上,本来决定把后端代码也放在服务器上,发现这样后端就不好改动了。所以开发时还是建议只把数据库放在服务器上了,代码的话写好测试服的配置文件到时再放上去。

说说碰到的问题吧,运行后端代码后发现一直连不上数据库。原因也很简单,其实就是数据库没有开放端口给外部链接。那么只需要把mongodb的ip绑定给开放一下。为了防止以后忘记,也简单的记录下。

第一步

进入mongo容器如找到mongo的配置文件

        
  • 1
docker exec -it dk_mongo bash

Snipaste_20220321_152614.jpg

第二步

配置文件找到后,就先退出容器,再复制出配置文件,再外面改了之后在复制回去。

复制出来
        
  • 1
docker cp cf7a833e53db:/etc/mongod.conf.orig /root/
改动

Snipaste_20220321_153325.jpg

在复制回容器
        
  • 1
docker cp /root/mongod.conf.orig cf7a833e53db:/etc/

那么这样基本没出错的话就可以连上了,当然生产环境的机器为了安全考虑不建议更改。

之后还是连接不上的话就要检查一下是不是防火墙没开了。

Tips:
        
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
#开启防火墙端口 systemctl start firewalld firewall-cmd --zone=public --add-port=6379/tcp --permanent #删除 firewall-cmd --zone=public --remove-port=80/tcp --permanent #重启防火墙 firewall-cmd --reload #关闭防火墙 systemctl stop firewalld.service #查看已开放端口 firewall-cmd --list-ports

Article at   2022/03/21 15:50  Published  code  Category,viewed  432  times

Relevant tags:    Linux 

Address:   https://kedong.me/article/76

Copyright Notice: Freely reproduced for non-commercial use