常见三款开源博客系统(jpress、b3log-solo、mblog)搭建网站

常见三款开源博客系统(jpress、b3log-solo、mblog)搭建网站

 三款好用的基于java开发的开源博客系统

mblog:

  mblog开源免费的博客系统, Java语言开发, 支持mysql/h2数据库, 采用spring-boot、jpa、shiro、bootstrap等流行框架开发

JPress:

 一个类似 WordPress 的系统,使用 JFinal 和 Jboot 开发。模板安装 模板卸载 在线编辑,完善的开发文档 极致的开发体验 用户独立登录和注册入口手机短信和邮箱激活配置,对于新手来讲有点部署难度

b3log-solo:

 Solo 是一个专业、简约、稳定、极速的开源 Java 博客程序。你可以自己搭建使用,也可以通过购买我们搭建好的服务来直接使用,社区活跃,功能齐全,部署难度同 jpress

====================================================================================================================

JPress 使用 Java8 开发,基于流行的JFinal和Jboot框架。

目前JPress已经内置的文章和页面其实是两个模块,可以移除和新增其他模块,因此,可以通过新增模块的方式,使用JPress来做博客、论坛、问答社区,商城等几乎可以用来做任何类型的网站。

JPress充分利用中国互联网生态、原生支持和微信公众号、小程序对接。基于LGPL开源协议。

官网:http://www.jpress.io/

https://gitee.com/fuhai/jpress.git

一、通过docker-compose安装 jpress

1、确认你已经安装了 docker Engine 与 docker-compose。

(1)安装docker:

更新 yum 缓存:
sudo yum makecache fast

安装 Docker-ce:
sudo yum -y install docker-ce

启动 Docker 后台服务
sudo systemctl start docker

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

Docker分成了两个版本:Docker EE和Docker CE,即:企业版(EE)和社区版(CE)。

CentOS7如何将Docker升级到最新版

步骤
  1. 卸载旧版 docker
> rpm -qa | grep docker # 也可以使用 yum list installed | grep docker 
docker-engine-1.13.0-1.el7.centos.x86_64
docker-engine-selinux-1.13.0-1.el7.centos.noarch
> yum remove docker-engine-1.13.0-1.el7.centos.x86_64
> yum remove docker-engine-selinux-1.13.0-1.el7.centos.noarch
  1. 升级至最新版
> curl -fsSL https://get.docker.com/ | sh
yum install -y docker-ce
  1. 重启docker
> systemctl restart docker # centos 7
> service docker restart # centos 6
  1. 查看升级后的版本
> docker version 
# docker -v

(2)安装 docker-compose:

# 方法一:
$ curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

# Linux下等效于
$ curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose; chmod +x /usr/local/bin/docker-compose

# 方法二:使用pip安装,版本可能比较旧
$ yum install python-pip python-dev
$ pip install docker-compose

# 方法三:作为容器安装
$ curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

# 方法四:离线安装
# 下载[docker-compose-Linux-x86_64](https://github.com/docker/compose/releases/download/1.8.1/docker-compose-Linux-x86_64),然后重新命名添加可执行权限即可:
$ mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose;
$ chmod +x /usr/local/bin/docker-compose
# 百度云地址: http://pan.baidu.com/s/1slEOIC1 密码: qmca
# docker官方离线地址:https://dl.bintray.com/docker-compose/master/

安装完成后可以查看版本:

# docker-compose --version
docker-compose 1.8.1

 

安装pip
yum -y install epel-release
yum -y install python-pip

确认版本
pip --version
更新pip pip install
--upgrade pip
安装docker
-compose pip install docker-compose
查看版本 docker
-compose version

一般步骤:

1、定义Dockerfile,方便迁移到任何地方;
2、编写docker-compose.yml文件;
3、运行docker-compose up启动服务;

Docker Compose 运行Tomcat 先测试一下好不好用

  1. 准备需要的镜像
    1. NGINX
    2. tomcat:8.5.0(使用最新版的看不到Tomcat主页,所以就用这个版本了)

准备nginx.conf配置文件,下一步需要挂载到nginx容器中(t01和t02待会创建Tomcat容器时挂载使用该别名,也可以更改)

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    #include /etc/nginx/conf.d/*.conf;
    upstream tomcat_docker {
         server t01:8080 weight=1;
         server t02:8080 weight=1;
    } 

    server {
        server_name "";
        listen 80 default_server;
        location / {
            proxy_pass http://tomcat_docker;
            proxy_redirect default;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}
docker-compose.yml 配置文件
version: '3.1'

services:

 mytomcat01:
  image: tomcat:8.5.0
  restart: "always"
  container_name: tomcat01
  ports:
   - "8081:8080"

 mytomcat02:
  image: tomcat:8.5.0
  restart: "always"
  container_name: tomcat02
  ports:
   - "8082:8080"

 nginx:
  image: nginx
  volumes:
   - "./nginx.conf:/etc/nginx/nginx.conf"
  ports:
   - "8000:80"
   - "443:443"
  links:
   - mytomcat01:t01
   - mytomcat02:t02

   修改 tomcat01:

docker exec -it tomcat01 /bin/bash
 echo "<html><head><title>tomcat01</title></head><body>server01</body></html>" > index.jsp
修改tomcat02:
docker exec -it tomcat02 /bin/bash
 echo "<html><head><title>tomcat02</title></head><body>server02</body></html>" > index.jsp

访问host-ip:8000

 

二、linux 安装非常简单,只需要两条命令:能找到docker-compose.yml文件就可以,版本更新可能就找不到了,需要去github上找一下

$ wget https://github.com/JpressProjects/jpress/blob/master/docker-compose.yml
$ docker-compose up -d

3、执行完毕以上命令之后,访问 http://host-ip:8080 即可。

docker-compose.yml对应的内容:数据库改成 5.7
version: '3.1'

services:

  db:
    image: mysql:5.7
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: jpress
      MYSQL_DATABASE: jpress
      MYSQL_USER: jpress
      MYSQL_PASSWORD: jpress
    volumes:
      - "./mysql:/var/lib/mysql"

  jpress:
    depends_on:
      - db
    links:
      - db
    image: fuhai/jpress:v2.0.1
    ports:
      - "8080:8080"
    restart: always
container_name: jpress-server environment: TZ: Asia
/Shanghai JPRESS_DB_HOST: db JPRESS_DB_PORT: 3306 JPRESS_DB_NAME: jpress JPRESS_DB_USER: jpress JPRESS_DB_PASSWORD: jpress volumes: - "./attachment:/opt/jpress/webapp/attachment" - "./addons:/opt/jpress/webapp/addons" - "./addonjars:/opt/jpress/webapp/WEB-INF/addons" - "./wp-content:/opt/jpress/webapp/wp-content" - "./templates:/opt/jpress/webapp/templates/dockers"

 container_name

Compose 的容器名称格式是:<项目名称><服务名称><序号>
虽然可以自定义项目名称、服务名称,但是如果你想完全控制容器的命名,可以使用这个标签指定:
container_name: jpress-server
这样容器的名字就指定为 jpress-server 了。

网站根目录的反爬虫协议路径:robots.txt

 

/opt/jpress/webapp/robots.txt
# 自定义的robots.txt协议覆盖:
docker cp robots.txt jpress-server:/opt/jpress/webapp
# 重新启动容器:
docker restart jpress-server

 

如果是前面 配置有nginx 可能存在缓存的情况,浏览器清理缓存 或者重启nginx容器

安装jpress

 

jboot是基于springcloud的分布式开源框架,部署通过内置 tomcat

 

三、构建自己的centos7+jdk8+tomcat8的docker镜像

以下tomcat官方镜像中tomcat:7 和tomcat:8的目录。

CATALINA_BASE:   /usr/local/tomcat
CATALINA_HOME:   /usr/local/tomcat
CATALINA_TMPDIR: /usr/local/tomcat/temp
JRE_HOME:        /usr CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

先将war包上传到服务器放在任意目录,我的war包是jpress.war,   这里是放在/usr/local/webapps,执行如下命令

docker run --name mytomcat8080 -d -p 8080:8080 -v webapps:/usr/local/tomcat/webapps tomcat:8.5
-it  # 是-i和 -t的简写, 表示以交互式的方式运行容器,加上-d表示后台运行,这里为了截图输出启动日志我用了-it,也可以用-d,再用"docker logs 容器名"命令输出日志
--rm   #当容器被停止时自动删除容器
-p 8080:8080  #8080是为容器中的tomcat设置的端口, 这里表示将80映射到宿主机8080端口, 如果只写-p 8080 容器会随机取值32768~61000中较大的端口号来映射到80端口上
-v       # 将tomcat中的usr/local/tomcat/webapps目录映射到宿主机当前目录的webapps目录,后面更新jar包直接扔到被映射的宿主机目录中即可
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值