"我首先使用腾讯云重装了系统,cenos 7.5 64 位,然后直接安装 Docker,按照 readme 下载了 solo,配备了数据库,请问接下来如何运行,直接启动访问域名发现无法访问? [图片]"

Docker 部署的小问题

我首先使用腾讯云重装了系统,cenos 7.5 64 位,然后直接安装 Docker,按照 readme 下载了 solo,配备了数据库,请问接下来如何运行,直接启动访问域名发现无法访问?

QQ201904011617022x.png

  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。

    Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!
    具体细节请浏览 B3log 构思

    652 引用 • 4972 回帖 • 710 关注
  • Q&A

    提问之前请先看一下这篇文章 《提问的智慧》精读注解版,好的问题比好的答案更有价值。

    1040 引用 • 6631 回帖 • 595 关注
11 回帖   
请输入回帖内容...
  • 88250

    还需要配置一下 NGXIN 反代,不然的话得用 8080 端口访问。

    1 回复
  • MisterBooo        

    加了也无法访问,已经清除缓存了。。

    1 回复
  • 88250      

    先看下进程是否启动着?用 docker ps 看或者用 lsof -i :8080

    1 回复
  • MisterBooo        

    没有启动

    1 回复
  • 88250      

    看下日志 docker logs solo

    2 回复
  • MisterBooo        

    QQ20190401163913.png

  • MisterBooo        

    [INFO ]-[2019-04-01 16:24:32]-[org.b3log.solo.SoloServletListener:97]: Solo is booting [pid=1, runtimeDatabase=MYSQL, runtimeMode=PRODUCTION, jdbc.username=root, jdbc.URL=jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC]
    [INFO ]-[2019-04-01 16:24:32]-[com.zaxxer.hikari.HikariDataSource:110]: HikariPool-1 - Starting...
    [ERROR]-[2019-04-01 16:24:34]-[com.zaxxer.hikari.pool.HikariPool:574]: HikariPool-1 - Exception during pool initialization.
    com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
    
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    	at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
    	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
    	at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:832)
    	at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
    	at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)
    	at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:207)
    	at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:136)
    	at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:369)
    	at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:198)
    	at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:467)
    	
    	
    	... 40 more
    [ERROR]-[2019-04-01 16:24:34]-[org.b3log.solo.service.InitService:189]: Check tables failed, please make sure database existed and database configuration [jdbc.*] in local.props is correct [msg=Communications link failure
    
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.]
    

    1 回复
  • 88250      

    主机上的数据库连不上哦,你看下用户名密码是否正确,如果正确的话看下 MySQL bind 的地址(配置项为 bind-address)是否为 127.0.0.1。

    1 回复
  • MisterBooo        

    我删除容器,然后重新使用 h2 数据库可以进入,我在试试还有啥问题😂

    1 回复
  • 88250      

    能不用 H2 就尽量别用,不方便日后运维啊。

  • wd  

    你使用的是容器内回环地址连接数据库,而容器内并没有 MySQL 服务,所以是连不上的,如果你的 MySQL 在宿主机上需要使用宿主机的地址进行连接。或者你可以试试 docker-compose。

请输入回帖内容 ...