zblog
当前位置:首页 > 商学院 > zblog > 正文内容

zblog

使用Docker Compose快捷部署Z-BlogPHP + MySQL

豫唐网络2023-09-07 17:552307

使用 Docker Compose 快捷部署zblogphp + MySQL。

镜像

Z-BlogPHP:https://github.com/zblogcn/zblogphp-docker-image

MySQL:mysql/mysql-server:5.7

前置

# 安装 Docker Compose
sudo curl -L https://github.com/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` \
 -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

生成最新版 Docker Compose 安装命令:https://demo.wdssmq.com/tools/GenShell/

使用

1、拉取项目代码并初始化文件:

# 克隆项目文件
git clone https://github.com/wdssmq/zbp-docker-compose.git zbp-dc
# 进入项目文件夹
cd zbp-dc
# 复制配置文件
cp conf/common.env.sample conf/common.env
cp conf/site_zbp_def.env.sample conf/site_zbp_def.env
# ---------------
# 「可选」映射 www 为其他路径
ln -s /home/wwwroot data/www

2、配置conf/*.env变量

common.env内为数据库密码,zbp 和 MySQL 都要使用,两个变量值要一样;

site_zbp_def.env内设置 zbp 管理员的用户名和密码;

3、启动

# 初始运行,会输出各种日志;
# ctrl + c 中止,可多次执行直到不报错
docker-compose up
# 正式运行(后台启动)
# docker-compose down
docker-compose up -d

4、备份及恢复

理论上只需要备份 volumes 指定的宿主机目录即可,默认是./data目录;

恢复时与 docker-compose.yml 文件在同一目录下,或者自行指定实际路径或符号连接;

之后需要设置所需的文件权限,比如data/www目录需要1000:1000用户权限;

# 权限恢复,以实际路径为准
sudo chown -R 1000:1000 data/www
# MySQL 数据
sudo chown -Rv 27:sudo data/mysql

5、其他命令

# 查看配置
docker-compose config
# 重启
docker-compose restart
# 停止
docker-compose stop
# 完全移除容器
docker-compose down
# 查看启动的容器情况
docker-compose ps
# 查看容器输出日志
docker logs $container_name
# 进入容器内部
docker exec -it $container_name /bin/bash

phpMyAdmin 连接管理数据库

如果需要 phpMyAdmin 可单独配置:

# 强制删除容器
docker rm --force phpMyAdmin
docker run --name phpMyAdmin \
  --network=zbp-dc_net_web \
  -p 9100:80 \
  -e PMA_HOST=MySQL \
  -e UPLOAD_LIMIT=4096K \
  -d phpmyadmin/phpmyadmin
# 关闭(但不删除)
docker stop phpMyAdmin
# 启用
docker start phpMyAdmin

注:

1、-e PMA_HOST=MySQL中MySQL为 docker-compose.yml 文件内定义的服务名;

2、-e UPLOAD_LIMIT=4096K用于设置导入文件的大小限制,可以按需要设置,比如20M;

3、--network=zbp-dc_net_web实际所需需要的值可以执行docker network ls查看;

就是使用执行路径文件夹的名字作为前缀,容器名也是;

docker network ls
# NETWORK ID     NAME             DRIVER    SCOPE
# 8fe33d9c54d0   bridge           bridge    local
# 4579b81d15b4   host             host      local
# 2e9e3da577ef   none             null      local
# a620eec8f4dc   zbp-dc_net_web   bridge    local
# 调试命令
sudo docker-compose down && rm -rf data/ && sudo docker-compose up

git地址:https://github.com/wdssmq/zbp-docker-compose

扫描二维码推送至手机访问。

版权声明:本文由汤阴县豫唐网络科技有限公司发布,如需转载请注明出处。

本文链接:https://www.ytecn.com/post/878.html

分享给朋友:

相关文章

php中截取中文字符串

php中截取中文字符串

截取GB2312中文字符串functionmysubstr($str,$start,$len){ $tmpstr=""; $strlen=$start+$len; for($...

zblogphp数据字典zblogphp数据库字典zblogphp数据表字段大全

zblogphp数据字典zblogphp数据库字典zblogphp数据表字段大全

zblogphp系统默认为8张表,分别为category(分类表)、comment(评论表)、config(系统和应用配置表)、member(用户表)、module(模块表)、post(文章表(含...

zblogphp开源免费、小巧强大的博客程序与CMS建站系统

zblogphp开源免费、小巧强大的博客程序与CMS建站系统

Z-BlogPHP 基于 PHP 平台,支持 MySQL(含 MariaDB)、SQLite 和 PostgreSQL 数据库。期待它能成为您建站、写博的上佳选择。我们一直在努力把 Z-BlogPHP...

zblog调用当前大分类下的其他小分类名称

zblog调用当前大分类下的其他小分类名称

文章页调用当前大分类下的其他小分类名称子分类内容{$cid=$article->Category->RootID?$article->Category->RootID:$art...

zblog二级导航下拉导航多级导航配置设置教程

zblog二级导航下拉导航多级导航配置设置教程

zblog已支持多级分类,而一些主题的模版也需要适配二级或者多级分类导航,但作为新手,还是不知道怎么下手,那么今天豫唐就写一个很简单的教程,供大家参考一下。准备工作:1、开启《链接模块管理》插件;2、...

GetList获取的文章怎么过滤某个分类

GetList获取的文章怎么过滤某个分类

通过 GetList 可以获取自定义的文章列表,他可以通过分类、作者、时间、标签、搜索、置顶、随机等等手段自由组合出你要的文章列表。过滤某个分类的代码如下(为了更加方便使用,我把实例做了下拆分处理)。...