基于docker搭建个人博客jpress

  • Post author:
  • Post category:其他




参考资料


第一个dicker化的java应用来自慕课网



在centos上安装docker



Jpress模版



参考博客



docker仓库


网易蜂巢docker镜像中心



步骤

环境:linux centos7.3系统



linux安装docker

设置yum源
 yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

查询版本列表
$ yum list docker-ce --showduplicates | sort -r
已加载插件:fastestmirror, langpacks
已安装的软件包
可安装的软件包
 * updates: mirrors.163.com
Loading mirror speeds from cached hostfile
 * extras: mirrors.163.com
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable
#指定版本安装(这里的例子是安装上面列表中的第二个)
$ yum install -y docker-ce-17.09.0.ce

启动docker
systemctl start docker.service

验证安装是否成功(有client和service两部分表示docker安装启动都成功了)	
docker version

yum -y install docker

service docker start

抓取hello-world镜像
docker run hello-world

查看当前镜像
docker images

查看镜像,端口转换等信息
docker ps

若此时出现不能运行的情况,使用yum update,版本过低会导致运行错误
运行镜像程序
docker run hello-world 

安装nginx
docker run hub.c.163.com/library/nginx
docker pull hub.c.163.com/library/nginx:latest
docker run nginx

下载jpress的war包到linux根目录

下载mysql和tomcat
docker pull hub.c.163.com/library/mysql:latest
docker pull hub.c.163.com/library/tomcat:latest

查看已下载的镜像
docker images

制作docker镜像
进入vi编辑器:vi Dockerfile
将下面的话写入编辑器
from hub.c.163.com/library/tomcat

MAINTAINER rnzhiw rnzhiw@163.com

copy jpress.war  /usr/local/tomcat/webapps

##########
FROM 表示:当前镜像依赖于tomcat镜像

MAINTAINER 表示:镜像创建者

COPY 表示:将jpress的war包复制到tomcat的webapps目录下

[root@VM_0_37_centos study]# docker images

REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE

[hub.c.163.com/library/tomcat](http://hub.c.163.com/library/tomcat)   latest              72d2be374029        10 months ago       292 MB

[hub.c.163.com/library/mysql](http://hub.c.163.com/library/mysql)    latest              9e64176cd8a2        13 months ago       407 MB

构建jpress镜像 使用-t参数指定镜像名为my/jpress tag为latest

[root@VM_0_45_centos jpress]# docker build -t my/jpress:latest .
Sending build context to Docker daemon  41.6 MB
Step 1/3 : FROM hub.c.163.com/library/tomcat
 ---> 72d2be374029
Step 2/3 : MAINTAINER zhaodan
 ---> Running in d21d9ca26eac
 ---> f3143419a182
Removing intermediate container d21d9ca26eac
Step 3/3 : COPY jpress.war /usr/local/tomcat/webapps/jpress.war
 ---> 01a57cf0c2e1
Removing intermediate container 5ed20c9d84e4
Successfully built 01a57cf0c2e1

[root@VM_0_45_centos jpress]# docker images
REPOSITORY                     TAG                 IMAGE ID            CREATED              SIZE
my/jpress                      latest              01a57cf0c2e1        About a minute ago   313 MB
hub.c.163.com/library/tomcat   latest              72d2be374029        10 months ago        292 MB
hub.c.163.com/library/mysql    latest              9e64176cd8a2        14 months ago        407 MB

启动docker镜像,先启动MySQL镜像,创建一个名为bolgdb的数据库,指定数据库用户以及登录密码,进行端口映射,启动数据库
[root@VM_0_45_centos jpress]# docker run --name bolgmysql -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=bolgdb hub.c.163.com/library/mysql
901aa0b984ca137d04d5a90a9d08b133b38b4dd709e5dc08928b002222137b3f

查看正在运行的容器
[root@VM_0_45_centos jpress]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
901aa0b984ca        hub.c.163.com/library/mysql   "docker-entrypoint..."   44 seconds ago      Up 44 seconds       0.0.0.0:3306->3306/tcp   bolgmysql

[root@VM_0_45_centos jpress]# docker run --name bolgjpress -d -p 8888:8080 my/jpress
e8acfe19e3438f6a0b15ee25570c597cd901820ee916cb4310caa00b50bb1157

[root@VM_0_45_centos jpress]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
e8acfe19e343        my/jpress                     "catalina.sh run"        32 seconds ago      Up 31 seconds       0.0.0.0:8888->8080/tcp   bolgjpress
901aa0b984ca        hub.c.163.com/library/mysql   "docker-entrypoint..."   4 minutes ago       Up 4 minutes        0.0.0.0:3306->3306/tcp   bolgmysql

访问
ip + port tomcat

image.png
ip + port/jpress

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

image.png
image.png

image.png
重启jpress容器,使用命令docker ps查看正在运行的容器
[root@VM_0_45_centos jpress]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
e8acfe19e343        my/jpress                     "catalina.sh run"        13 minutes ago      Up 13 minutes       0.0.0.0:8883->8080/tcp   bolgjpress
901aa0b984ca        hub.c.163.com/library/mysql   "docker-entrypoint..."   17 minutes ago      Up 17 minutes       0.0.0.0:3307->3306/tcp   bolgmysql
[root@VM_0_45_centos jpress]# docker restart e8acfe19e343
e8acfe19e343

##########################
docker常用命令

docker stop 容器ID,停止容器

docker restart 容器ID,重启容器

docker start 容器ID,启动容器

docker rm  容器ID,删除容器
#########################



运行截图

访问ip+port

网站地址可在线测试:http://101.132.185.105:8083/jpress/

ip + port/jpress

在这里插入图片描述

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


注意:数据库密码可以自己设定,数据库主机在linux上输入ifconfig,把inet写入方框内


在这里插入图片描述

在这里插入图片描述

重启jpress容器,使用命令docker ps查看正在运行的容器
[root@VM_0_45_centos jpress]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
e8acfe19e343        my/jpress                     "catalina.sh run"        13 minutes ago      Up 13 minutes       0.0.0.0:8888->8080/tcp   bolgjpress
901aa0b984ca        hub.c.163.com/library/mysql   "docker-entrypoint..."   17 minutes ago      Up 17 minutes       0.0.0.0:3306->3306/tcp   bolgmysql
[root@VM_0_45_centos jpress]# docker restart e8acfe19e343
e8acfe19e343

##########################
docker常用命令

docker stop 容器ID,停止容器

docker restart 容器ID,重启容器

docker start 容器ID,启动容器

docker rm  容器ID,删除容器
#########################


刷新网页


首页

登录后台

在这里插入图片描述

在这里插入图片描述



版权声明:本文为rnzhiw原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。