时间:2017年04月28日星期五

说明:基于docker技术,使用jpress开源框架搭建个人博客网站。特别感谢jpress开源项目。系统版本:CentOS 7.2-64bit。

步骤一:准备Docker环境

1、服务器安装Docker

安装命令:

yum install –y docker

显示Complate表示安装完成

使用命令:

docker version,查看是否安装完成。

由于docker是C/S模式,因此需要启动docker服务。

使用命令:

service docker start

显示启动成功。

再次使用命令:

docker version,可以看到docker的客户端和服务端都启动了。

2、下载所需镜像

本例中,需要使用mysql和tomcat,我们选择国内网易的镜像库。

打开网易镜像中心:https://c.163.com/hub#/m/home/

下载mysql镜像,搜索mysql镜像。

选择第一个,带有鲸鱼标识的表示为docker官方的镜像

复制下载地址,到linux中执行

下载命令:docker pull hub.c.163.com/library/mysql:latest

下载tomcat镜像与下载mysql镜像一致

下载命令:docker pull hub.c.163.com/library/tomcat:latest

使用命令:docker images,查看已下载的镜像

3、下载所需war包

项目使用jpress开源项目搭建

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

点击下载

跳转到项目的github页面,点击wars,进入war包下载

再次点击jpress-web-newest.war

点击下载:

下载完成后,使用FTP工具将下载的war包上传至服务器。本例中,将下载的war包上传至/study目录下。

上传完成后,如下所示:

使用mv命令重命令jpress

步骤二:制作Docker镜像

1、编写Dockerfile文件

在/study目录下。使用命令:

vi Dockerfile,创建Dockerfile文件

编写以下代码:

FROM 表示:当前镜像依赖于tomcat镜像
MAINTAINER 表示:镜像创建者
CP 表示:将jpress的war包复制到tomcat的webapps目录下
编写完成后,按esc键,输入英文状态下的冒号和wq保存并退出

2、构建jpress镜像

使用命令:

docker build –t jpress: latest .

构建docker镜像,使用-t参数指定镜像名为jpress,tag为latest。

镜像构建成功,使用docker images查看是否存在

可以看到一个名为jpress的镜像,表示镜像构建成功

步骤三:启动Docker镜像

1、启动mysql镜像

使用命令:

docker run --name bolgmysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=youdbpassword -e MYSQL_DATABASE=bolgdb hub.c.163.com/library/mysql

表示:创建一个名为bolgdb的数据库,指定数据库root用户登录密码,进行端口映射,启动mysql数据库。

使用命令:

docker ps,查看正在运行的容器。

使用命令:

netstat –na |grep 3306,查看端口是否被监听

2、启动jpress镜像

使用命令:

docker run –name bolgjpress –d –p 8888:8080 jpress

使用命令:

docker ps,查看正在运行的容器

步骤四:进行验证

1、jpress安装

访问服务器,使用IP+端口号,jpress依赖的tomcat已经启动,并能正常访问。

在端口号后面加上/jpress

第一次访问,需要进行安装。点击下一步,进行数据库配置。将启动mysql镜像时配置的数据库名称、端口、用户名和密码,一一对应填写。

注:数据库主机须填写服务器的IP地址,内网或外网都可以。使用ifconfig命令查看本机IP。

安装成功,填写jpress管理账号,并点击完成。

重启jpress容器,使用命令docker ps查看正在运行的容器

docker常用命令

docker stop 容器ID,停止容器。
docker restart 容器ID,重启容器。
docker start 容器ID,启动容器。
docker rm 容器ID,删除容器。

2、jpress管理

再次访问,页面如下

访问管理界面,并输入jpress安装时,配置的管理员账号

至此,个人博客网站就安装完成了。快去试一试吧,搭建自己的博客网站。

本文转自作者妙手空空:

参考:https://segmentfault.com/a/1190000009237581#articleHeader8

Linux_基于Docker快速搭建个人博客网站的更多相关文章

  1. Docker快速搭建WordPress博客网站

    WordPress WordPress是一个非常著名的PHP编写的博客平台,发展到目前为止已经形成了一个庞大的网站平台系统.在WP上有规模庞大的插件和主题,可以帮助我们快速建立一个博客甚至网站. 在W ...

  2. 从零到一快速搭建个人博客网站(域名自动跳转www,二级域名使用)(二)

    前言 本篇文章是对上篇文章从零到一快速搭建个人博客网站(域名备案 + https免费证书)(一)的完善,比如域名自动跳转www.二级域名使用等. 域名自动跳转www 这里对上篇域名访问进行优化,首先支 ...

  3. 用docker快速搭建wordpress博客

      WordPress是一个非常著名的PHP编写的博客平台,发展到目前为止已经形成了一个庞大的网站平台系统.在WP上有规模庞大的插件和主题,可以帮助我们快速建立一个博客甚至网站. 在Windows上可 ...

  4. 2019基于Hexo快速搭建个人博客,打造一个炫酷博客(1)-奥怪的小栈

    本文转载于:奥怪的小栈 这篇文章告诉你如何在2019快速上手搭建一个像我一样的博客:基于HEXO+Github搭建.并完成SEO优化,打造一个炫酷博客. 本站基于HEXO+Github搭建.所以你需要 ...

  5. 从零到一快速搭建个人博客网站(域名备案 + https免费证书)(一)

    环境介绍 资源 说明 centos v7.2 docker 快速部署项目环境 nginx 反向代理,同时配置https证书 halo v1.4.2,开源博客项目 Let's Encrypt 免费证书 ...

  6. Castle ActiveRecord框架学习(二):快速搭建简单博客网站

    一.数据库 1.数据表 Category:类别标签表(字段Type=1为类别,Type=2为标签) Category_Post:类别标签与文章中间表 Post:文章表 Comment:评论表 2.数据 ...

  7. 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统

    介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...

  8. 使用 Github 和 Hexo 快速搭建个人博客

    导语 个人兴趣爱好特别广泛,喜欢捣鼓各种小东西自娱自乐.虽然都没能深入研究,但是自己的“孩子”还是很想拿出来遛遛得人一句夸奖的.所以刚学 Markdown 的时候很是有想过要搭个个人博客来玩玩,一来激 ...

  9. Docker + WordPress搭建个人博客

    WordPress是目前非常受欢迎的开源博客系统,今天使用Docker + WordPress搭建个人博客,整个过程非常丝滑. 搭博客先要准备域名和服务器,昨天在阿里云买了个.top的域名花了5块钱( ...

随机推荐

  1. ubuntu 卸载干净软件(包括配置文件)

    var/cache/apt/archives occupying huge space I am in the process of cleaning up my system. And I see ...

  2. js利用offsetWidth和clientWidth来计算滚动条的宽度

    原文: http://www.haorooms.com/post/js_scroll_width 参考: https://www.cnblogs.com/benxiaohai-microcosm/p/ ...

  3. MRP routing设置释疑

    Jeffer9@gmail.com         工艺是指在不同工作中心执行的作业序列         作业的详细信息 Number of cycles 在该工作中心操作几个循环 Number of ...

  4. Odoo HRMS应用简介

    Odoo HRMS包含行政管理的大部分功能,包含 部门组织架构 员工清册 岗位规划以及招聘管理 用工合同 考勤管理 休假和加班 费用报销 员工考核 绩效.激励.培训成绩 薪资清册     个角色 角色 ...

  5. ASP.NET MVC Filters 4种默认过滤器的使用【附示例】 数据库常见死锁原因及处理 .NET源码中的链表 多线程下C#如何保证线程安全? .net实现支付宝在线支付 彻头彻尾理解单例模式与多线程 App.Config详解及读写操作 判断客户端是iOS还是Android,判断是不是在微信浏览器打开

    ASP.NET MVC Filters 4种默认过滤器的使用[附示例]   过滤器(Filters)的出现使得我们可以在ASP.NET MVC程序里更好的控制浏览器请求过来的URL,不是每个请求都会响 ...

  6. vim 宏的使用

    1. 基本使用 q[a-z] 开始录制宏 q  停止录制 @[a-z] 使用宏 @@ 调用最近使用的宏 22@[a-z] 多次重放宏 2. 宏的执行方式 串行方式:5@[a-z] 宏内包含向下一个目标 ...

  7. 一些常用的shell

    1 if语句 if语句的三种写法,注意[]的两个空格,else if 写法是elif,不要漏了fi结束 if [ xxx ] then fi if [ xxx ] then echo "&q ...

  8. 使用kubernetes 官网工具kubeadm部署kubernetes(使用阿里云镜像)

    系列目录 kubernetes简介 Kubernetes节点架构图: kubernetes组件架构图: 准备基础环境 我们将使用kubeadm部署3个节点的 Kubernetes Cluster,整体 ...

  9. 使用sed来自动注释/恢复crontab中的一个任务

    # 注释crontab任务crontab -l  >  ${WORK_DIR}/cron_binarysed  -i 's%\(.*/home/xyz/xyz.sh\)%#\1%' ${WORK ...

  10. centos编译 Compiling FFmpeg on CentOS RHEL Fedora

    This guide is based on a minimal installation of the latest CentOS release, and will provide a local ...