1. 服务器环境
- CentOS 7 或 8
- Docker
我使用的是 CentOS 8
购买腾讯服务器有优惠哦腾讯服务器购买地址
2. 下载 Docker 镜像
docker pull mysql:5.7 # mysql:5.7 镜像
docker pull redis:6.0.8-alpine # redis 镜像(因为我服务器配置低,所以选用了alpine版本)
docker pull yeyeck233/yeblog_nginx:1.1 # 挂载了 YeBlog 后台管理项目的 nginx 镜像,已经有默认nginx配置文件了
docker pull yeyeck233/yeblog_web:1.1 # 挂载了YeBlog前台展示项目 node.js 镜像
docker pull yeyeck233/yeblog_backend:1.1 # 挂载了 服务端项目的 java 镜像
由于我服务器配置过于垃圾,YeBlog的镜像都是基于 alpine 版本的。
下载完毕后,执行 docker images 命令检查镜像是否都存在
docker images
3. 启动镜像运行项目
3.1 运行 MySQL 容器并初始化数据库
数据库初始化脚本: yeblog.sql
# password 自己设置
docker run -p 3306:3306 --env MYSQL_ROOT_PASSWORD=password --name mysql -d mysql:5.7
docker ps # 检查 mysql 容器是否在运行
docker exec -i some-mysql sh -c 'exec mysql -uroot -p"password"' < (你服务器上 yeblog.sql 的路径)
执行成功后可以在Mysql可视化工具检查是否成功, 我用的是 SQLyog
也可以进入容器查看
docker exec -it mysql /bin/bash # 进入 mysql 容器
mysql -uroot -ppassword # 进入 mysql shell
mysql> show databases; # 列出所有数据库
mysql> use yeblog # 使用 yeblog 数据库
mysql> show tables; # 列出 yeblog 的所有表
mysql> exit # 退出 mysql shell
exit # 退出容器
3.2 运行 Redis 容器
password 自行设置
docker run -d -p 6379:6379 --name redis redis:6.0.8-alpine --requirepass password
docker ps # 检查容器是否在运行
3.3 运行 yeblog_backend 容器
REDIS_PASSWORD=password 这个 password 应该与之前设置的 redis password 一致
docker run -d -p 8090:8090 \ -v /dockerData/yeblog/headers:/tmp/yeblog/headers \ -v /dockerData/yeblog/image:/tmp/yeblog/image \ -v /dockerData/yeblog/logs:/tmp/yeblog/logs \ --link mysql:mysql \ --link redis:redis \ --env REDIS_PASSWORD=password --name yeblog yeyeck233/yeblog_backend:1.1
使用 docker ps 检查 yeblog 容器已经在运行后,在浏览器输入以下地址,我的服务器 IP 是 192.168.71.128。
http://192.168.71.128:8090/article/page/1
若看到以下结果则证明 后端服务运行正常。 如果无法访问,注意关闭防火墙
3.4 运行 yeblog_web 容器
docker run -p 3000:3000 --name web --link yeblog:backend -d yeyeck233/yeblog_web:1.1
docker ps # 检查是否有一个叫 web 的容器在运行
在浏览器输入你的
http://192.168.71.128:3000/
可以看到以下页面,则表示博客前台运行正常
3.5 运行 yeblog_nginx 容器
docker run -d -p 80:80 -p 443:443 --name yeblog-nginx \
-v /dockerData/nginx/logs:/var/log/nginx \
-v /dockerData/nginx/ssl:/ssl \
--link yeblog:backend \
--link web:web \
yeyeck233/yeblog_nginx:1.1
docker ps # 检查容器是否正常运行
到这一步,所有容器都已经在运行了,使用 docker ps 应该可以看到以下容器
在浏览器地址栏输入你的IP,看到以下页面就大功告成了
再检查后台页面
4. 登录博客后台管理
初始账号密码
- 账号: Admin
- 密码: password123
到这里 YeBlog 就部署完成了!