凌月风的个人博客

记录精彩人生

Open Source, Open Mind,
Open Sight, Open Future!
  menu

Solo建站

0 浏览

  • 准备docker环境

    1. 安装docker,根据自己系统查找安装命令,此处使用Ubuntu系统

      curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
      
  • 安装并启动solo

    1. 拉取solo镜像

      docker pull b3log/solo
      
    2. 通过镜像创建solo容器并启动,使用的是H2 Database。启动在8080端口

      docker run --detach --name solo --volume ~/solo_h2/:/opt/solo/h2/ --publish 8080:8080 \
          --env RUNTIME_DB="H2" \
          --env JDBC_USERNAME="root" \
          --env JDBC_PASSWORD="123456" \
          --env JDBC_DRIVER="org.h2.Driver" \
          --env JDBC_URL="jdbc:h2:/opt/solo/h2/db;MODE=MYSQL" \
          b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=
      
    3. 验证

      #查看容器有没有启动
      curl http://localhost:8080
      
    4. 使用H2数据库,数据文件在~/solo_h2/目录下,注意备份

  • 安装nginx反向代理。默认启动在8080端口,如果想通过80访问,必须做一层代理,如果不需要代理可以跳过

    1. 拉取nginx镜像(如果不需要代理可以跳过)

      docker pull nginx
      
    2. 查看solo所在容器的ip

      docker exec -it solo ip a
      
    3. 根据ip准备nginx配置文件nginx.conf,放到自己的目录/home/rxdu

      vim /home/rxdu/nginx.conf
      
    4. 配置文件内容,需注意 修改监听域名和跳转ip

      worker_processes  1;
      
      events {
          worker_connections  1024;
      }
      
      
      http {
          include       mime.types;
          default_type  application/octet-stream;
      
          sendfile        on;
      
          keepalive_timeout  65;
      
          upstream backend {
      		server localhost:8080; # Solo 监听端口ip也要改成自己的solo端口和IP
      	}
      
      	server {
      		listen       80;
      		server_name  88250.b3log.org; # 博客域名改成自己的
      
      		access_log off;
      
      		location / {
      			proxy_pass http://backend$request_uri;
      			proxy_set_header  Host $http_host;
      			proxy_set_header  X-Real-IP $remote_addr;
      			client_max_body_size  10m;
      		}
      	}
      }
      
    5. 创建nginx容器并启动。/home/rxdu/nginx.conf为第3步配置文件位置

      docker run -d --name nginx -p 80:80 -v /home/rxdu/nginx.conf:/etc/nginx/nginx.conf nginx
      

岁月磨我少年志,时光凉我善良心,总有人间一两风,填我十万八千梦

image/svg+xml