Docker 本地化部署 Solo,浏览器无法初始化

各位大佬,此问题困扰了我好久。

问题描述:

官方教程命令,在本地电脑和阿里云上运行都不报错,但是本地无法访问 Web 端进行初始化:

docker run --detach --name solo --network=host \
  --env RUNTIME_DB="MYSQL" \
  --env JDBC_USERNAME="root" \
  --env JDBC_PASSWORD="root" \
  --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
  --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \
  --rm \
  b3log/solo --listen_port=8080 --server_scheme=http --server_host=这里替换了以下几个情况:localhost、127.0.0.1、本地内网IP、阿里云公网ip

本地环境:Mac+Docker

阿里云环境:Centos+Docker

只有访问 http://阿里云公网 ip:8080/ 地址出现了初始化页面 👍 👍👍👍

http://localhost:8080 出现 无法访问 😭 😭😭

本地试了好多个入口:

http://localhost:8080

http://127.0.0.1:8080

http://10.1.160.254:8080

这三个地址 都看不到 欢迎使用 Solo 页面

好纳闷,是哪里出问题了?

请指教。

以下是本地 Docker 日志

[INFO ]-[2020-07-15 20:12:42]-[org.b3log.solo.Server:253]: Solo is booting [ver=4.2.0, os=Linux, isDocker=true, inJar=false, luteAvailable=false, 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],
[WARN ]-[2020-07-15 20:12:42]-[org.b3log.solo.service.InitService:156]: Solo has not been initialized, please open your browser to init Solo,

赞助商 我要投放

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250

    好的,感谢指出问题 🙏

  • 其他回帖
  • bugless 1 1 评论

    对于这个问题,应该有些眉目了

    我的是 Mac 环境,Docker for Mac 是不支持 --net=host 的

    换句话说:--net=host 仅在 Linux 系统上有效

    所以 solo 这个官方 docker 安装脚本在 Docker for Mac 下是有问题的。

    1 回复
  • bugless

    你的可以?

    我这边不行。我试过各种组合。

    1 回复
  • bugless

    公网服务是 ok 的,已经 OK 了。

    只是 本地 不行 无法 localhost:8080 很奇怪。

  • 查看全部回帖