文章 40
评论 417
浏览 67887
从零开始安装 solo 博客

从零开始安装 solo 博客

之前也写过类似的帖子,但是由于那时自己的各种原因写的不是特别好,所以今天写一个聚合帖,记录从购买服务器到安装solo然后通过nginx反向代理,最后升级https的全过程。此贴献给完全无基础的人,所以废话较多,见谅

1. 购买服务器

首先你得有自己的服务器,有的话就跳过。服务商可选的有很多,比如:阿里云腾讯云百度云、还有一些香港的服务商以及国外的(有特殊需求的可以考虑下)。腾讯和阿里对于新用户以及学生都有很大的优惠,配置的话如果只挂solo,买最低配1G1核1M即可。国内的几家都可以关注下,不定时会有很好的优惠活动。我比较推荐阿里云,前段时间刚买了一台3年才668多,不知道活动结束没有。阿里云购买服务器时会要求你安装系统(不知道可不可以不选),推荐选择centos。

2. 购买域名(可不买)

建议还是买一个域名,直接通过IP访问的话不是特别好。购买域名时不要盯着 .com.cn这种比较热门的域名,往往很贵。还有尽量选择可备案的域名,否则就会像鼠鼠在碎觉一样只能挂载444端口上运行。可通过域名.信息查看可备案域名。如果你服务器买着国外的话似乎就不用备案。

3. 域名解析与备案

服务器和域名购买完后需要将域名解析到服务器,有些服务商可能不支持跨服务商解析,腾讯云域名可以解析阿里云服务器。解析过程大概需要10分钟。解析完成后如下图所示:
image.png
如果不备案的话,80端口与443端口大概率会被封。所以备案还是需要的,备案的过程有点麻烦需要耐心。大致步骤如下:
image.png
image.png
接入备案很快,几天就完事了。

4. 为服务器安装系统

给服务器安装系统不用像你给自己装系统那样麻烦,很方便,由于我使用的centos,所以推荐安装centos,以免出现不必要的错误。后续操作嘘设置服务器安全组,开发如下端口:808080330644322。具体左右我会在下面一一说明,22用来远程连接服务器使用,windows用户可下载xshell远程链接服务器。

5. 安装docker

直接使用yum安装,简单快捷

#安装 Docker
yum -y install docker

#启动 Docker 后台服务
service docker start

#测试运行 hello-world
docker run hello-world

出现hello world 就证明安装正常了
image.png

6.安装Mysql

版本随意,我这里选择的5.6,你可以选择更高版本的,这个没关系,不影响使用

# 安装mysql:5.6,直接docker run 他会自动去官方镜想下载
# MYSQL_ROOT_PASSWORD=你的数据库密码
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

# docker安装的mysql默认允许远程连接,可以使用Navicat等软件连接数据库
# 进入容器mysql
docker exec -it mysql bash

# 进入数据库 p后面跟你的密码
mysql -uroot -pXXX

# 创建数据库(数据库名:solo;字符集utf8mb4;排序规则utf8mb4_general_ci)
create database solo DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
# 出现Query OK, 1 row affected (0.00 sec)表示成功
#退出数据库
exit
#退出容器
exit

7. 安装solo

直接运行以下命令

docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="123456" \
--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=www.jinjianh.com

上面的命令建议手敲,免得出错,参数说明

  • --env JDBC_PASSWORD="123456" 将123456换成你的密码
  • --listen_port=8080 监听的端口
  • --server_scheme=http 请求方式,暂时使用http,后面我们会换成https
  • --server_host=www.jinjianh.com 你的域名,如果你没有域名可以写ip地址
  • --rm因为这个容器后面要删掉,带上rm会省很多事。

命令成功执行没有报错的话,通过 docker ps查看执行的容器列表中是否存在solo,存在这表示启动成功,直接访问你的域名加:8080即可访问你的博客,金戋博客--http://www.jinjianh.com:8080
如果你尚在备案中,你可以收藏本帖,后面等备案通过了在研究后面的部分。
如果你不想使用nginx也不想升级https,那么你可以先执行 docker stop solo,然后将上面 --listen_port=80808080换成 80,然后去掉 --rm,再执行一次就ok。

8. 安装nginx

安装nginx前,我们现在本地建立几个文件,用于存放nginx的配置文件等

# 切换到服务器根目录
cd /
# 创建主目录
mkdir dockerData
# 创建文件
mkdir dockerData/nginx dockerData/nginx/conf dockerData/nginx/logs dockerData/nginx/www dockerData/nginx/ssl

上面的 dockerData可以换成自己喜欢的名字

  • dockerData/nginx 用于存放docker下nginx自定义文件
  • dockerData/nginx/conf 存放nginx配置文件
  • dockerData/nginx/log 存放nginx日志文件
  • dockerData/nginx/www 存放nginx访问的资源文件
  • dockerData/nginx/ssl 存放ssl证书
    启动nginx
docker run --name nginx -p 80:80 -d --rm nginx

如果你没有备案,可以将上面的 80:80换成 8081:80,因为这个东西一会儿也要删掉,所以加上 --rm参数,命令执行玩后通过 docker ps查看nginx是否在运行,在运行的情况下访问你的域名加端口号查看是否正常安装,80直接省略。如下表示访问成功
image.png
导出配置文件

  • docker cp nginx:/etc/nginx/nginx.conf /dockerData/nginx/conf/nginx.conf 导出配置文件nginx.conf
  • docker cp nginx:/etc/nginx/conf.d /dockerData/nginx/conf/conf.d 导出配置为你nginx.conf
    执行 docker stop nginx,会自动删除现在的nginx容器,然后执行如下命令重新启动一个nginx容器
docker run -d -p 80:80 --name nginx \
-v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /dockerData/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /dockerData/nginx/www:/usr/share/nginx/html \
-v /dockerData/nginx/logs:/var/log/nginx nginx
  • -v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ 挂载配置文件 nginx.conf
  • -v /dockerData/nginx/conf/conf.d:/etc/nginx/conf.d 挂载配置文件 default.conf
  • -v /dockerData/nginx/www:/usr/share/nginx/html 挂载项目文件
  • -v /dockerData/nginx/logs:/var/log/nginx 挂载配置文件

访问你的域名,你会发现报错了

image.png
这时我们可以前往 /dockerData/nginx/logs下查看日志文件

2019/08/05 14:57:54 [error] 6#6: *3 directory index of "/usr/share/nginx/html/" is forbidden, client: 121.32.33.217, server: localhost, request: "GET / HTTP/1.1", host: "www.jinjianh.com"

因为 /usr/share/nginx/html/被挂载到了服务器上面的 /dockerData/nginx/www目录下,原来的欢迎页面在 dockerData/nginx/www是没有的,所有就报错了,这里我们随便建一个。

# 打开项目文件
cd /dockerData/nginx/www
# 使用vim 创建并编辑文件
vim index.html
# 此时我们会进入vim界面,按 i 插入,然后输入
<h1>Hello Docker-Nginx</h1>
# 输入完后,按 esc,然后输入 :wq

再次访问我们的域名就可以看到我们刚刚写的 h1标签内容

image.png

9. 申请ssl证书,将http升级为https(可跳过)

https想比与 http来说,最核心的内容就是多了一个ssl证书,证书是可以免费申请的。

腾讯云

访问 SSL证书选购 申请

image.png

私钥可不填写
image.png

选择手动DNS验证

image.png

可直接前往 SSL 证书 域名验证指引 - 操作指南 - 文档中心 - 腾讯云查看

image.png
image.png

前往证书管理-控制台等待验证通过即可

image.png

nginx下文件上传到 /dockerData/nginx/ssl目录下即可

阿里云

访问云盾证书服务申请,访问后如果有无内容可复制 https://common-buy.aliyun.com/?spm=5176.10695662.958455.3.3f9140d55mPzFH&commodityCode=cas#/buy 打开
image.png

走一下支付流程,然后申请

image.png
image.png
image.png
操作流程基本与腾讯云一样,我就不详细说明了

其他平台

免费的证书平台有很多,也可以去别的地方申请

上传证书

一下示例为腾讯云证书,阿里云
image.png

验证完后,我们下载证书,解压后得到

image.png

最后把 Nginx下的两个文件上传至服务器 /dockerDat/nginx/ssl目录下,别的服务商申请的证书也一样,将最后的ssl证书放到 /dockerDat/nginx/ssl下即可

配置nginx配置文件

cd /dockerData/nginx/conf/conf.d
vim default.conf

# 参考我的配置,配置自己的default.conf文件
server {
    listen       443;
    server_name  localhost;
    ssl on;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    ssl_certificate /ssl/1_www.jinjianh.com_bundle.crt;  # ssl 证书目录
    ssl_certificate_key /ssl/2_www.jinjianh.com.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
# ......
}
server{
  listen 80;
  server_name localhost;
  rewrite ^(.*) https://$host$1 permanent;
}
# 按esc,然后输入:wq保持退出

不重要的部分我省略了,可根据自己服务器配置做出相应调整
由于我们现在用的nginx容器并未监听443端口,所以需要删除现在的容器,重新启动一个新的nginx容器

docker stop nginx  # 停止容器
docker rm nginx # 删除容器
# 启动新的
docker run -d -p 80:80 -p 443:443 --name nginx \
-v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /dockerData/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /dockerData/nginx/ssl:/ssl/ \
-v /dockerData/nginx/www:/usr/share/nginx/html \
-v /dockerData/nginx/logs:/var/log/nginx nginx
  • -p 443:443 监听443端口
  • -v /dockerData/nginx/ssl:/ssl/ 挂载ssl证书目录

访问查看,一切正常
image.png

10. 将solo通过nginx方向代理实现https访问

让solo还是跑在8080端口上,通过nginx代理到443端口即可,由于我们上面启动solo时添加了 --rm参数,只需要 docker stop solo即可自动删除solo容器,然后我们重新启动一个solo容器

docker run --detach --name solo --network=host \
--env RUNTIME_DB="MYSQL" \
--env JDBC_USERNAME="root" \
--env JDBC_PASSWORD="123123" \
--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" \
b3log/solo --listen_port=8080 --server_scheme=https --server_host=www.jinjianh.com --server_port=
  • --server_scheme=http换成 --server_scheme=https即可
  • --server_port:最终访问端口,使用浏览器默认的 80 或者 443 的话值留空即可

然后我们去配置nginx配置文件,实现nginx反向代理

cd /dockerData/nginx/conf/conf.d
vim default.conf
 location / {
        proxy_pass http://backend$request_uri;
        proxy_set_header  Host $http_host;
        proxy_set_header  X-Real-IP $remote_addr;
        #root   /usr/share/nginx/html;
        #index  index.html index.htm;
    }
# 替换上面部分即可
# 按esc,然后输入:wq保持退出

注意!!!Nginx反代理上面的方式可能出现问题参考Nginx反代

注意!!!Nginx反代理上面的方式可能出现问题参考Nginx反代

注意!!!Nginx反代理上面的方式可能出现问题参考Nginx反代

重启nginx,docker restart nginx

image.png

完美

11. 后记

皮肤挂载

  • 在你的服务器上创建一个目录用于存放皮肤,比如我的 /dockerData/solo/skins/
  • 然后将你要挂载的皮肤放到上面那个目录下
  • 最后删除当前容器 重新启动一个容器,添加参数 --v /dockerData/solo/skins/:/opt/solo/skins/,这个添加时要注意位置,要添加到 b3log/solo --listen... 的上面一排
  • 使用挂载皮肤时,默认会使用 Pingsu,

皮肤推荐

我开源了两款皮肤 solo-nexmoe,因为我很懒的原因,solo-star没有手机端,所以你可以多挂载一款皮肤们比如官方皮肤 Pinghsu,如果你没有这款皮肤就会报错,没有请前往solo-skins下载

数据库占用内存过大优化

由于我们购买的服务器是内存只有1G,然后docker安装的mysql虽然很快,但是实际上占用内存非常大,之前服务器在腾讯云的时候就经常挂掉,排查了很久才发现是docker下mysql的问题,迁移到阿里云后倒是没出先挂掉的问题,但是服务器内存占用也一直在90%以上,所以我们对mysql容器进行一些优化。
由于容器内不能vim,所以我们将mysql的配置文件复制到服务器上改了之后再复制回去,也可以将配置文件挂载到服务器上,过程我不多讲,只讲核心部分。

这里注意,如果你要删除容器重新挂载的话,请提前备份mysql数据,不然你就属于删库了
这里注意,如果你要删除容器重新挂载的话,请提前备份mysql数据,不然你就属于删库了
这里注意,如果你要删除容器重新挂载的话,请提前备份mysql数据,不然你就属于删库了
重要的话说三遍

在配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf中添加

performance_schema_max_table_instances=400
table_definition_cache=400
table_open_cache=256
# 从容器中复制到服务器
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /dockerData/mysql
# 从服务器复制到容器
docker cp /dockerData/mysql/mysqld.cnf mysql:/etc/mysql/mysql.conf.d/mysqld.cnf

改完之后记得重启mysql,docker restart mysql

启用lute

此内容适用于solo3.6.5+

  • 启动Lute参考Lute HTTP 使用指南
  • 在solo启动参数末尾追加 --lute_http=http://127.0.0.1:8249/--lute_http=http://localhost:8249/--lute_http=
    solo成功启动后在终端输入 docker logs solo,日志显示有 luteAvailable=true即表示启用lute成功

文章发布自:墨殇的技术博客,转载请注明出处,谢谢!

  • remixjc 回复»

    如下代码块可以改为最新的方式
    server {
        listen       443;
        server_name  localhost;
        ssl on;
    
    server {
        listen       443  ssl;
        server_name  localhost;
        #ssl on;
    

  • remixjc 回复»

    加入你这个功能可以
    原因分析:nginx的配置缺少这个配置,导致资源(css,js等)的请求默认会请求原部署端口,而原部署端口又不能在外部请求访问,所以会出现这种问题

  • RookieLee 回复»

    执行以下命令:

    docker run -d -p 80:80 --name nginx

    -v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
    -v /dockerData/nginx/conf/conf.d:/etc/nginx/conf.d
    -v /dockerData/nginx/www:/usr/share/nginx/html
    -v /dockerData/nginx/logs:/var/log/nginx nginx

    报错:

    /usr/bin/docker-current: Error response from daemon: oci runtime error: container_linux.go:235: starting container process caused "container init exited prematurely".

    尝试更新了 yu update,但是没用,求教

  • key1board 回复»

    关于无法访问静态资源,我的解决办法:

    location / {
    #此处加入
    proxy_set_header  Host $http_host;
            proxy_set_header  X-Real-IP  $remote_addr;
            client_max_body_size  10m;
      proxy_set_header  Host $http_host;
            proxy_set_header  X-Real-IP  $remote_addr;
            client_max_body_size  10m;}
    

    重启 nginx,刷新页面!

  • key1board 回复»

    你好,请问解决了吗?

  • key1board 回复»

    你好,我也遇到同样的问题了,请问你是怎呢解决的

  • DavidRicardoWilde 回复»

    我我用 Dokcer 安装完 用 docker ps 检查, 发现端口没有启用是怎么回事,设立了端口号的(且确定端口不冲突)

  • Nicenice 回复»

    那个安装 solo 也太慢了吧,有没有快点的方法

  • codull 回复»

    按照上面步骤部署完之后却 无法访问到静态资源

  • codull 回复»

    请问这个问题解决了吗

  • qbs 回复»

    弄好了吗?我之前遇到过

  • johnsonxiaoyu 回复»

    您好感谢您的回复,我已经找到问题了是nginx的配置 缺少了一个ssl=on;

  • vinasis 回复»

    没有用 nginx 进行反向代理的情况。用nginx代理一下即可解决

  • johnsonxiaoyu 回复»

    image.png
    这是怎么回事配置的问题吗?

  • fennylv 回复»

    楼主好,
    请问Gets oauth client id failed: HTTP/1.1 404 Not Found是指网站已不支持这个接口调用了吗?有什么解决方法吗?

    现象如下:
    今天用老的solo war包部署成功之后,能正常访问,就是第一次下面这个页面一直跳不过去
    image.png
    查看后台日志如下:
    image.png

  • VULCAN2019 回复»

    最近发现出了一个问题 ,就是登陆的时候,网站就会出现拒绝连接的情况!login.png
    login2.png

  • VULCAN2019 回复»

    https提示站点不安全怎么解决呀

  • find-blogs 回复»

    各位请教个问题,最近我的github 头像总消失,请问这个怎么处理😰

  • find-blogs 回复»

    好的谢谢,弄明白了😄

  • InkDP 回复»

    怎么又被封了

  • 88250 回复»

    B3log 组织暂时被 GitHub 封了,正在等待 GH 官方回复。 获取 GitHub 用户信息异常,请从源站重新登录

    代码高亮的问题可以试试启用 Lute HTTP

  • panjf2000 回复»

    solo 在 github 上怎么提不了 issue 了?我看所有 issue 也都没了,咋回事?现在最新版 solo 代码高亮功能失效了,能看看咋回事吗?

  • yangkun19921001 回复»

    反反复复弄了好几周,终于给弄好,感谢 solo ,感谢 @InkDP 写的教程。
    image.png

  • VULCAN2019 回复»

    博客已经全部部署完成了,但是没有样式,好像静态资源的问题,图片如下:
    M57S0THLP8H4ZF.png

  • yangkun19921001 回复»

    弄好了,是因为 --server_port= 这里我写了 8080 ,我把它去掉就好了

  • yangkun19921001 回复»

    image.png
    http 转 https 这一步加载出来报错了 image.png

  • VULCAN2019 回复»

    解决了!谢谢大佬

  • LiParanoid 回复»

    docker启动的容器停止一下,然后 启动参数里 --server_host= 后面的 localhost 改成 你最终访问时 浏览器输入栏的值

  • VULCAN2019 回复»

    solo容器部署成功了,通过ip访问的时候显示出如下页面:
    S4FQNWUZHAR2FD5.png
    我去看了下latke帮助剖析,里面让我修改WEB-INF/classes/latke.properties这个配置文件,可是这个配置文件在哪里呀,我想进入solo容器也进不去qwq,大佬帮帮我

  • 88250 回复»

    改下 JDBC_URL 参数就行,后面加上 &allowPublicKeyRetrieval=true

  • InkDP 回复»

    不清楚,没弄到127.0.0.2上去 帮你手动 @88250

  • VULCAN2019 回复»

    第七步我是这样写的:
    docker run --detach --name solo --network=host
    --env RUNTIME_DB="MYSQL"
    --env JDBC_USERNAME="root"
    --env JDBC_PASSWORD="265350"
    --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver"
    --env JDBC_URL="jdbc:mysql://172.17.0.2:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC"
    b3log/solo --listen_port=8080 --server_scheme=http --server_host=www.besttheresa.top
    查看容器日志:
    如下图3M0G0US6E0HBEPIE.png

    好像是数据库的毛病,但不知道怎么解决啊qwq,大佬们帮帮我。。。我的mysql容器的ip是172.17.0.2,能够ping通,账号密码也保证是正确的,mysql下载的版本是最新的latest

  • InkDP 回复»

    你把你的对比下我贴上去的不就明白了

  • InkDP 回复»

    很明显是8080占用了呀,你换一个其他端口就可以了

  • scecog 回复»

    我以前部署过一个项目,但是现在我把他停止了,还不行吗,那现在需要怎样操作

  • InkDP 回复»

    所以你的服务器上赚了Tomcat 而且还占用了8080?

  • scecog 回复»

    image

  • InkDP 回复»

    配置NGINX前先确认你的域名加8080能跑

  • InkDP 回复»

    图片外链了

  • scecog 回复»

    但是我进去了我的域名 为啥出现的是tomcat?
    image

  • scecog 回复»

    尴尬了

  • scecog 回复»

    image

  • InkDP 回复»

    image.png

  • scecog 回复»

    image

  • InkDP 回复»

    NGINX配置发一下

  • scecog 回复»

    没有啊

  • InkDP 回复»

    你NGINX没写我的晒

  • scecog 回复»

    是应该有个后台管理的东西吧,从哪里进呢

  • scecog 回复»

    
    [root@VM_0_3_centos conf.d]# docker run --detach --name solo --network=host \
    > --env RUNTIME_DB="MYSQL" \
    > --env JDBC_USERNAME="root" \
    > --env JDBC_PASSWORD="123123" \
    > --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" \
    > b3log/solo --listen_port=8080 --server_scheme=https --server_host=www.jaysunshine.club --server_port=
    
    

  • InkDP 回复»

    命令发我看看呢

  • scecog 回复»

    填了啊,就是进去和你的一毛一样

  • InkDP 回复»

    你配置的时候填你自己的域名啊

  • scecog 回复»

    我使用我的域名为什么进去了还是你的博客,需要怎样进行编辑管理呢

  • InkDP 回复»

    删了重新敲

  • scecog 回复»

    2019-11-19T03:26:19.384411000Z [WARN ]-[2019-11-19 11:26:19]-[org.b3log.solo.service.InitService:161]: Solo has not been initialized, please open your browser to init Solo
    2019-11-19T03:26:19.924217000Z [ERROR]-[2019-11-19 11:26:19]-[org.b3log.latke.http.BaseServer:66]: Start server failed, exit process
    2019-11-19T03:26:19.924493000Z java.net.BindException: Address in use
    

  • Luzandbeing 回复»

    好的 非常感谢!

  • InkDP 回复»

    你这种情况我也遇到过,你跟着官方的再试试吧 Solo 用户指南

  • Luzandbeing 回复»

    docker run --detach --name solo --network=host \

    --env RUNTIME_DB="MYSQL"
    --env JDBC_USERNAME="root"
    --env JDBC_PASSWORD="123456"
    --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"
    b3log/solo --listen_port=8080 --server_scheme=http --server_host=www.beinglee.top --server_port=

    image.png

    ?

  • Luzandbeing 回复»

    image.png
    我太难了?

  • InkDP 回复»

    --listen_port=8080 --server_scheme=http --server_host=www.jinjianh.com --server_port= 写成上面这人样子,然后直接访问你的域名试试

  • InkDP 回复»

    不可能

  • Luzandbeing 回复»

    也不行唉,只有端口是80才可以加载到Js,css文件、?

  • InkDP 回复»

    --server_scheme=http这个加上呢

  • Luzandbeing 回复»

    并且我只是开了Java服务,没有开nginx进行代理。

  • Luzandbeing 回复»

    大佬,我按照你说的做了后,js的地址改回来了,但是还是加载不出来。
    image.png
    image.png

  • InkDP 回复»

    去掉* --server_scheme=试试

  • Luzandbeing 回复»

    我观察到当我切到8081的时候,JS的加载路径变为 http://js/lib/compress/pjax.min.js 所以加载不出来,是Bug么?大佬。

  • Luzandbeing 回复»

    docker run --detach --name solo --network=host
    --env RUNTIME_DB="MYSQL"
    --env JDBC_USERNAME="root"
    --env JDBC_PASSWORD="123456"
    --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"
    b3log/solo --listen_port=8081 --server_scheme=

  • InkDP 回复»

    命令贴出来呢

  • Luzandbeing 回复»

    为什么我的solo服务只要切换端口到8081或者别的,有些js,css就加载不出来,导致博客严重乱码。求解????大神们,我要奔溃了。。。

  • InkDP 回复»

    没太懂你的意思,后台只有你自己能进的,别人登录不过是在你的博客注册一个账户而已

  • find-blogs @ find-blogs 回复»

    请问下 怎么限制登录后台的账户

  • find-blogs @ ruoxi520chenxi 回复»

    请问下 怎么限制登录后台

  • Luzandbeing 回复»

    host not found in upstream 有没有人遇到鸭 小白就救

  • InkDP 回复»

    image.png solo挂了,docker logs solo 看下报错内容,或者删了容器重新敲

  • LetmeQuadrakill 回复»

    第七步,安装solo,访问我的 ip+8080,出现无法访问1.png
    2.png
    有没有大神指导下,不太懂linux?

  • dyz172425284 回复»

    这个地址打不开,被我们公司内网拦截了,我等会下班回寝室再试一下,十分感谢

  • 88250 回复»

    打开 response location 标头的地址看看。

  • dyz172425284 回复»

    请问为什么发布博客保存不了呢,调用接口状态码为302QQ图片20191113185731.png

  • LatoRed 回复»

    我没有用Nginxhuaji

  • dik111 回复»

    我加了还是不行。。。。可以发一下你的配置文件吗?

  • InkDP 回复»

    能不能用你自己试试就知道了啊

  • zlyzhang 回复»

    我用项目根目录下的Dockerfile 自己构建的镜像怎么比 pull 的b3log/sole要小啊,
    自己构建的命令

    cd solo
    docker build -t lyzhang/solo:1.0
    
    

    构建后 大小只有141M,直接从仓库拉取的b3log/solo 151M 我这个能用吗
    image.png

  • LatoRed 回复»

    是第九步上传完ssl证书那里的话要在listen 443后面加多个ssl才可以,这个是个坑doge

  • zhaoyangkun 回复»

    我这边的nginx配置文件是django的,你要参考一下嘛

  • yangkun19921001 回复»

    加了的 www.devyk.top:8080 这样的。

    第七步是这样配置的:
    docker run --detach --name solo --network=host
    --env RUNTIME_DB="MYSQL"
    --env JDBC_USERNAME="root"
    --env JDBC_PASSWORD="123456"
    --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=www.devyk.top

    添加之后没有报错。太不顺咯

  • InkDP 回复»

    看着没毛病,你访问的时候加了端口没有

  • yangkun19921001 回复»

    image.png

  • InkDP 回复»

    docker ps看下容器是否在运行

  • yangkun19921001 回复»

    [root@iZm5ednzb8iuguajg62vwzZ ~]# sudo docker logs -f -t --tail 30 solo
    2019-11-08T15:55:22.301347000Z [INFO ]-[2019-11-08 23:55:22]-[org.b3log.solo.SoloServletListener:99]: Solo is booting [ver=3.6.6, servletContainer=jetty/9.4.12.v20180830, os=Linux, isDocker=true, 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]
    2019-11-08T15:55:22.323325000Z [INFO ]-[2019-11-08 23:55:22]-[com.zaxxer.hikari.HikariDataSource:110]: HikariPool-1 - Starting...
    2019-11-08T15:55:22.692596000Z [INFO ]-[2019-11-08 23:55:22]-[com.zaxxer.hikari.HikariDataSource:123]: HikariPool-1 - Start completed.
    2019-11-08T15:55:22.746529000Z [INFO ]-[2019-11-08 23:55:22]-[org.b3log.solo.service.InitService:191]: It's your first time setup Solo, initialize tables in database [MYSQL]
    2019-11-08T15:55:23.202384000Z [WARN ]-[2019-11-08 23:55:23]-[org.b3log.solo.service.InitService:161]: Solo has not been initialized, please open your browser to init Solo
    
    
    

    报错了

  • yangkun19921001 回复»

    不会看日志 新手?

  • InkDP 回复»

    先确定容器是否在运行,在看下容器日志,第七步与备案无关

  • yangkun19921001 回复»

    不知道为哈,第七步我安装好了,就是看不了效果(没有备案)。用 IP 或域名输入也都没有反应。

  • taiboliya 回复»

    启动容器挂载本地皮肤也出现无法加载的情况,各位是如何解决的呀?和目录权限有关吗?感谢。
    无标题.png

  • InkDP 回复»

    不会,因为我第7部写的8080端口,没备案只会屏蔽443与80,所以应该能访问,如果不行,你可以先试试ip的方式

  • yangkun19921001 回复»

    请问下如果没有备案是不是代表第 7 步配置完以后,也看不了效果?谢谢!

  • Mrfirewind 回复»

    ? 谢谢~

  • InkDP 回复»

    docker exec -it solo /bin/sh

  • InkDP 回复»

    忘记咋个进了 我圈一下D哥 @88250

  • Mrfirewind 回复»

    还有一个问题求教下,如何进入solo容器,我是执行这个命令后 docker exec -it /bin/sh solo 执行后报EOF错误。
    image.png

  • liao697 @ linbainian 回复»

    最简单的就是重新来一遍 说不定就好了

  • InkDP 回复»

    docker版本问题

  • Mrfirewind 回复»

    ? 只有--net命令,改为--net就好了。谢谢大佬

  • InkDP 回复»

    docker help run 看下有没有 netword
    image.png

  • Mrfirewind 回复»

    3D0E9HIFRIFJ2WZG.jpg 这个命令应该是没错的。

  • Mrfirewind 回复»

    3D0E9HIFRIFJ2WZG.jpg 这个命令应该是没错的。

  • InkDP 回复»

    输入的命令应该是 --env RUNTIME_DB="MYSQL" 而不是> --env RUNTIME_DB="MYSQL"

  • Mrfirewind 回复»

    请教各位大佬,输入如下命令后,
    docker run --detach --name solo --network=host \

    --env RUNTIME_DB="MYSQL"
    --env JDBC_USERNAME="root"
    --env JDBC_PASSWORD="123456"
    --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=

    显示如下错误是什么原因
    flag provided but not defined: --network
    See 'docker run --help'.

  • csfwff 回复»

    请叫我找茬小能手huaji

  • aeneag 回复»

    老哥,我消失了好几个月之后,来这又看到您挑错别字了,莫名的笑了

  • zhongshuyi 回复»

    image.png
    我这个显示配置错误
    在第七步的时候,安装完了solo

  • linbainian 回复»

    好的 谢谢

  • InkDP 回复»

    看不出毛病,最好的方式就是删了容器重新敲一次

  • linbainian 回复»

    可以了 但是现在访问进去显示 Latke配置错误

  • linbainian 回复»

    求问一下 安装好solo 未响应咋回事 微信图片20191026044759.png

  • ruoxi520chenxi 回复»

    我靠,看到了!!!!
    踏着一个工程里面不是一个主题么?这么坑!!!!!我以为一个工程就是一个主题

  • csfwff 回复»

    solo-skins里有很多皮肤,其中一个叫Pinghsu……

  • ruoxi520chenxi 回复»

    我知道问题在这里,皮肤我也下载了
    但是从git pull下来的默认主题Pinghsu项目名字叫solo-skins,我试着从新命名也不行
    我以为是目录的问题,然后就在两个目录下都pull了
    这是我的文件信息Samsung.zip

  • csfwff 回复»

    我只是告诉你问题在这……你检查下皮肤目录里有木有这个

  • ruoxi520chenxi 回复»

    大兄弟肯定和我一样挂载了皮肤

  • csfwff 回复»

    Can't load the default skins, please make sure skin [Pinghsu] is under skins directory and structure correctly
    doge

  • ruoxi520chenxi 回复»

    # 命令
    docker run --detach --name solo --network=host \
    --env RUNTIME_DB="MYSQL" \
    --env JDBC_USERNAME="root" \
    --env JDBC_PASSWORD="5201314chenxi" \
    --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" \
    --volume /dockerData/solo/skins/:/opt/solo/skins/ \
    b3log/solo --listen_port=8080 --server_scheme=https --server_host=www.bestdarren.top --server_port=
    

    这是日志

    [INFO ]-[2019-10-22 00:00:16]-[org.b3log.solo.SoloServletListener:99]: Solo is booting [ver=3.6.5, servletContainer=jetty/9.4.12.v20180830, os=Linux, isDocker=true, 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]
    [ERROR]-[2019-10-22 00:00:16]-[org.b3log.latke.Latkes:829]: Read skin [Pinghsu]'s configuration failed: null
    [ERROR]-[2019-10-22 00:00:16]-[org.b3log.solo.SoloServletListener:315]: Can't load the default skins, please make sure skin [Pinghsu] is under skins directory and structure correctly
    [INFO ]-[2019-10-22 09:33:12]-[org.b3log.solo.SoloServletListener:99]: Solo is booting [ver=3.6.5, servletContainer=jetty/9.4.12.v20180830, os=Linux, isDocker=true, 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]
    [ERROR]-[2019-10-22 09:33:12]-[org.b3log.latke.Latkes:829]: Read skin [Pinghsu]'s configuration failed: null
    [ERROR]-[2019-10-22 09:33:12]-[org.b3log.solo.SoloServletListener:315]: Can't load the default skins, please make sure skin [Pinghsu] is under skins directory and structure correctly

  • tangyihengsb 回复»

    解决好了,是防火墙设置那里 没有开放8080端口......

  • tangyihengsb 回复»

    [INFO ]-[2019-10-21 20:45:18]-[com.zaxxer.hikari.HikariDataSource:110]: HikariPool-1 - Starting...
    [INFO ]-[2019-10-21 20:45:19]-[com.zaxxer.hikari.HikariDataSource:123]: HikariPool-1 - Start completed.
    [WARN ]-[2019-10-21 20:45:19]-[org.b3log.solo.service.InitService:161]: Solo has not been initialized, please open your browser to init Solo

  • InkDP 回复»

    没看出毛病,删了容器和数据库重新来一次吧,命令尽量自己敲

  • tangyihengsb 回复»

    image.png

  • tangyihengsb 回复»

    image.png

  • InkDP 回复»

    docker ps看下有没有,没有就看下日志

  • tangyihengsb 回复»

    image.png

  • tangyihengsb 回复»

    solo安装上了但是访问我的域名没响应 怎么办呀.....?

  • InkDP 回复»

    错误信息看一下,明天贴一下呢

  • tangyihengsb 回复»

    image.png

  • InkDP 回复»

    因为出错了之后容器会关闭,-rm会在关闭容器时删除容器,去掉就好了

  • tangyihengsb 回复»

    为啥安装了solo镜像秒被删呀......

  • ruoxi520chenxi 回复»

    但是又出现问题了,挂载皮肤的时候
    使用你的那条语句-v指定会出问题,我看帮助使用--volume指定Ok,但是现在加载不了默认皮肤,皮肤我已经git了

    # /opt/solo/skins/
    # /dockerData/solo/skins/
    # 这两个目录都下载了,不过默认的主体git下载后的名字是solo-skins,我需要修改文件夹名字么
    
  • ruoxi520chenxi 回复»

    搞定了,看来本身就是mysql版本的问题造成的
    5.6就没问题了
    建议后面的兄弟们,就是用5.6的mysql版本就好了

  • InkDP 回复»

    我用的5.6 你看下docker日志吧

  • ruoxi520chenxi 回复»

    我mysql版本8.0的

  • ruoxi520chenxi 回复»

    那问题应该是出在我的solo了,我试过

    docker start solo
    docker restart solo
    

    都启动不了,nginx、mysql都可以启动

  • InkDP 回复»

    8080都访问不了就证明你的solo出了问题,跟nginx无关

  • ruoxi520chenxi 回复»

    大佬帮我看看有木有什么问题

  • ruoxi520chenxi 回复»

    这个是我的配置文件

  • ruoxi520chenxi 回复»

    我再试试
    配置nginx文件能发我一份么?default.zip

  • InkDP 回复»

    重新来吧,一步步来

  • ruoxi520chenxi 回复»

    带端口8080就访问不了
    不带8080端口就是404
    2019/10/21 08:28:02 [error] 6#6: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 113.110.224.5, server: localhost, request: "GET / HTTP/1.1", upstream: "https://39.105.14.42:8080/", host: "www.bestdarren.top"
    2019/10/21 08:28:02 [error] 6#6: *1 open() "/usr/share/nginx/html/50x.html" failed (2: No such file or directory), client: 113.110.224.5, server: localhost, request: "GET / HTTP/1.1", upstream: "https://39.105.14.42:8080/", host: "www.bestdarren.top"
    2019/10/21 08:28:04 [error] 6#6: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 113.110.224.5, server: localhost, request: "GET /sw.js HTTP/1.1", upstream: "https://39.105.14.42:8080/sw.js", host: "www.bestdarren.top", referrer: "https://www.bestdarren.top/sw.js"
    2019/10/21 08:28:04 [error] 6#6: *1 open() "/usr/share/nginx/html/50x.html" failed (2: No such file or directory), client: 113.110.224.5, server: localhost, request: "GET /sw.js HTTP/1.1", upstream: "https://39.105.14.42:8080/sw.js", host: "www.bestdarren.top", referrer: "https://www.bestdarren.top/sw.js"
    这是错误日志,
    2019/10/21 08:30:51 [error] 6#6: *9 open() "/usr/share/nginx/html/50x.html" failed (2: No such file or directory),像这个错误日志,还是知道什么问题的,这个是物理机的文件不存在但是不知道怎么解决了,本身我物理机上就没有装nginx

  • ruoxi520chenxi 回复»

    可以访问了,现在404

  • InkDP 回复»

    你先确定你的域名加:8080可以访问

  • ruoxi520chenxi 回复»

    找到了,我nginx的反向代理地址没改
    现在改了之后,我就打不开了?

  • InkDP 回复»

    nginx哪里也要写你自己的

  • ruoxi520chenxi 回复»

    docker环境我是第一次接触

  • ruoxi520chenxi 回复»

    我的域名:www.bestdarren.top

  • ruoxi520chenxi 回复»

    域名是我自己的

  • InkDP 回复»

    你不要啥都填我的啊,域名这些要换成你的啊

  • ruoxi520chenxi 回复»

    照着教程安装好了,域名能打开了,但是网站还是你的模板啊,后台也进不去,点哪一个都跑到你那边去了

  • fengxinhui 回复»

    solo起不来咋办

  • fengxinhui 回复»

    把ssl on 换成 listen 443 ssl 就好了吗,

  • SwordOfLine 回复»

    回复一下,nginx的配置可能根据版本变化有了改变,设置https时,我是踩了很多坑,比如ssl on在新版本是去掉了,取而代之的是listen 443 ssl

  • InkDP 回复»

    完事 感谢大佬 @AdlerED huaji

  • hubowestlife 回复»

    看一下这哥目录呗,没有手动建一个嘛

  • hubowestlife 回复»

    大佬,我有疑问:
    1.nginx这里你开始写的所有的HTTP请求都转到HTTPS(80--->443),然后你用的主页文件是自定义的测试页面,这没问题。
    问题来了,然后又加了nginx反向代理到solo的8080端口,然后就莫名其妙的可以8080转到443了?
    请问8080端口的http请求怎么转到443端口的?

  • slowlyhold 回复»

    请教一下,步骤9后访问域名报错,日志:the "ssl" directive is deprecated, use the "listen ... ssl" directive instead in /etc/nginx/conf.d/default.conf:4 我看/etc 下也没有nginx文件夹

  • wxy000 回复»

    图片.png路径好像没什么问题

  • AdlerED 回复»

    检查路径

  • wxy000 回复»

    图片.png有人知道这是怎么回事吗?我是严格按照这个安装步骤来的,走到这里就不行了

  • InkDP 回复»

    安全组呢,可能服务器没开对应端口,可以在服务器上curl试试

  • hanzongzhi 回复»

    折腾了一下午卡在访问安装solo后访问的那一步, 检查防火墙关闭了, docker ps 显示应用起了, ping 网址有反应 为什么访问不了呢?

  • SaoGhost 回复»

    怎么导入博客

  • Jalins 回复»

    将MySQL容器中的数据挂载到本地上是使用-v /data/mysql/data:/var/lib/mysql吗?

  • InkDP 回复»

    不知道mysql8的配置文件在哪儿,自己查一次吧

  • Assassintor 回复»

    image.png

    我没在```
    /etc/mysql/mysql.conf.d/mysqld.cnf

    这个路径下看到配置文件,新添加一个还是在我查找的文件上面修改 
  • InkDP 回复»

    上面有优化的方式 试着优化一下吧

  • Assassintor 回复»

    image.png
    image.png
    这不就是内存快满了,缓存1G

  • InkDP 回复»

    你看下你内存占用情况

  • InkDP 回复»

    你看下你内存占用情况呢

  • Assassintor 回复»

    image.png
    又出现了问题了,我查看mysql日志,我重启mysql就没事了,这是为什么?

  • Assassintor 回复»

    有可能,我换了mysql8.0,然后我设置了下,最多设置3153600时间,如果这几天都不出问题,那应该就和默认时间有关系

  • InkDP 回复»

    那应该不是内存的问题,可以尝试优化下数据库

  • Assassintor 回复»

    1h2g的

  • InkDP 回复»

    服务器1G是不是?

  • Assassintor 回复»

    重启了也一样,这是第二次出现这种情况了,不知道为什么,安装好了,用着用着,就这样了,镜像删除了重新拉取,启动容器也不行,上次我出现这种情况,我数据库数据存在就访问不了,删除了就能访问,后面我就删除数据库,重启容器,把文章导进来,重新发布了一遍就没事了了,反正感觉是数据库某个表的问题吧,因为出现问题的时候,每次我都是数据库清空了启动没事,仅仅导入文章和标签这两个表,就能正常,但是全部输入导入,就会出错,不知道为啥

  • InkDP 回复»

    重启试试呢

  • InkDP 回复»

    目测不是nginx的问题,是solo的问题

  • iwanna 回复»

    #安装 Docker
    yum -y install docker
    

    阿里云上面CentOS 6版本的。。。

  • Assassintor 回复»

    image.png
    不知道为什么,突然就不能访问了,
    image.png
    开启nginx反向代理,就404

  • 88250 回复»

    不需要重建数据库啊,更新镜像重启就行,数据会自动迁移到最新版的。

  • LF-WEI 回复»

    我是本地库,不是docker上面的mysql,后来重新挂载solo容器就好了,不知道啥原因;
    solo容器每次更新都要重建数据库solo实例吗?

  • liuhaofay 回复»

    好吧,我先试试,谢谢啦~

  • InkDP 回复»

    《提问的智慧》精读注解版,你先尝试下自己解决试试呢

  • liuhaofay 回复»

    请详细教我,☆⌒(*^-゜)v THX!!

  • 88250 回复»

    是不是权限问题?

  • InkDP 回复»

    更新下镜像呢

  • InkDP 回复»

    @88250 搞不定了,你来吧

  • liuhaofay 回复»

    没事,自己玩玩,估计都没啥流量,也不经常用

  • Submoon 回复»

    没用。

  • liuhaofay 回复»

    大哥,我输入yum -y install docker 后 出现这个是怎么回事呀?
    There are no enabled repos.
    Run "yum repolist all" to see the repos you have.
    You can enable repos with yum-config-manager --enable

  • InkDP 回复»

    你试试把你下载来的所有皮肤全部扔在skins里面试试

  • Submoon 回复»

    3LHZ93708L2TSQ722WT.png

    我在GitHub官方下的应该没问题啊。

  • InkDP 回复»

    把Pinghsu改成Pingsu(此处应该@88250)

  • Submoon 回复»

    R6IMVWBMXH3D1GECB08.png
    0Z0V1WWFKPQMFHPRW0.png
    是这样吧

  • InkDP 回复»

    目录截图看看呢

  • Submoon 回复»

    [ERROR]-[2019-09-25 14:47:57]-[org.b3log.latke.Latkes:829]: Read skin [Pinghsu]'s configuration failed: null
    [ERROR]-[2019-09-25 14:47:57]-[org.b3log.solo.SoloServletListener:315]: Can't load the default skins, please make sure skin [Pinghsu] is under skins di

    我明明在目录下有放Pingshu的皮肤文件啊。

  • cuijianzhe 回复»

    你这是国外的搬瓦工主机吧,建议不要部署在国外服务器,容易被墙?

  • InkDP 回复»

    试试吧

  • liuhaofay 回复»

    KiwiVM.png
    这个配置

  • cuijianzhe 回复»

    image.png
    我得环境是mysql+nginx+docker(solo+lute),目前用了不到一半,感觉512的话其实可以试试?

  • InkDP 回复»

    1G内存优化一下就只需要60左右 我的就是 你可以考虑一下用h2搭建,或者买云数据库

  • liuhaofay 回复»

    哦,谢谢,我刚也查了下,多数博主都说1G内存都能达到90%多,还抱着侥幸心理想着这个也许512就够呢,这下就不想了。

  • InkDP 回复»

    不太清楚你的情况,因为我的mysql也是用docker搭建的

  • InkDP 回复»

    512内存估计够呛哦

  • liuhaofay 回复»

    新手一个,请问512内存 11G硬盘的 VPS服务器能搭建solo博客吗?

  • LF-WEI 回复»

    本地建库,solo部署在docker上链接本地库,为啥改好参数之后表都建在了错误的实例mysql上,很奇怪。

  • InkDP 回复»

    --rm会在关闭容器时删除容器,出错会关闭容器,所以你的容器直接就没了,至于出错原因没有日志的话我也无法判断

  • InkDP 回复»

    输入命令时去掉--rm

  • InkDP 回复»

    你先确定博客能够正常访问后再配置nginx

  • xh12k 回复»

    第七步执行完,返回 id ,但是执行 Docker ps -a 查不到,看了下日志也没报错
    09:20+08:00" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/8da9593d897fc75ccfaf78608a500997450b77e81ba705fa07a6
    09:24+08:00" level=info msg="shim reaped" id=8da9593d897fc75ccfaf78608a500997450b77e81ba705fa07a6185914b0200e module="containerd/tasks"
    09:24.575993885+08:00" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"

  • Assassintor 回复»

    同求,我也是404

  • Assassintor 回复»

    配置了nginx后,404

  • InkDP 回复»

    有错呗,看下日志

  • jwq0204 回复»

    请问solo容器一启动就关闭了是什么原因?
    感谢

  • jwq0204 回复»

    感谢? ? ?

  • sq8852161 回复»

    不加8080端口呢?

  • hxdwd 回复»

    您好,有个问题:在这步:10. 将 Solo 通过 nginx 方向代理实现 https 访问
    cd /dockerData/nginx/conf/conf.d
    vim default.conf
    location / {
    proxy_pass http://www.jinjianh.com:8080;
    }
    填写是自己的域名,可是没用,404 错误,您能教教我吗谢谢。

  • littlecurl 回复»

    手动点赞!? ? ?

  • InkDP 回复»

    不加也可以

  • hyc-shayu 回复»

    docker安装nginx命令是不是少了--network=host

  • Nuwanda-1997 回复»

    嗯嗯 我是新手 还在慢慢熟悉trollface

  • InkDP 回复»

    docker ps 就能看到容器了呀

  • Nuwanda-1997 回复»

    最后一步复制时忘了改域名 哈哈
    另外第9步最后重启新的nginx时你的name写成了nginxs 多了一个s也让我一番好找?

  • InkDP 回复»

    ??访问到了我的博客?

  • Nuwanda-1997 回复»

    捣鼓了一下午 最后成功通过我的域名访问到了墨殇的技术博客。。。

    完美。。。

  • InkDP 回复»

    粘贴的时候可能贴漏了

  • Nuwanda-1997 回复»

    安装mysql后:使用

    docker exec -
    ``` 无法进入mysql
    我用的是
    

    docker exec -it mysql bash

  • jinjianh 回复»

    是留空了的呀

  • sq8852161 回复»

    使用docker部署solo时,最后一句。
    b3log/solo --listen_port=8080 --server_scheme=https --server_host=www.jinjianh.com --server_port=
    即时没有server_port 端口要使用,也一定留空,不要删除这一句,不然可能会导致https无法访问静态资源的问题。

  • tixwho 回复»

    mosaic.jpg

    如果想挂载就会这么报错然后exited255...删掉挂载目录的两条就能正常运行
    是说如果想挂载必须现在挂载的那个目录里存好要用的皮肤不然就会因为读取不到默认皮肤报错...?坑真多啊otz

  • jinjianh 回复»

    image.png
    挂载皮肤的时候这么写会翻车,将挂载皮肤的命令写到b3log/solo上一行

  • csfwff 回复»

    ? 正好看到了而已

  • aeneag 回复»

    哥,你为什么一直执着于别字

  • csfwff 回复»

    ? 我这是躺着也中枪,反面教材
    另外,步骤7中 http那里有别字,步骤8 随便建一个 也是别字

凡打不倒我的,必使我强大!!!—— 墨殇的技术博客

取消