/ Docker,专题,科技 / 4053 浏览

Docker方式部署V2Board

V2Board是个很优秀的系统。

按照官方的文档,部署V2Board需要用到aapanel。但官方其实一直有开发Docker版,只不过一直没有相关部署文档罢了。

最近,宝塔的骚操作,让人越来越没有安全感,于是,本篇就简单介绍一下用Docker方式部署V2Board的方法。

 

一、前期准备

1、安装Docker

curl -sSL https://get.docker.com/ | sh 
systemctl start docker 
systemctl enable docker

 

2、安装Docker Compose

apt-get install docker-compose -y
curl -L "https://github.com/docker/compose/releases/download/1.25.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

 

你也可以为Docker Compose创建一个快捷键,创建好以后,就可以直接用dc命令替代docker compose了。

chmod a+x /usr/local/bin/docker-compose
rm -rf `which dc`
ln -s /usr/local/bin/docker-compose /usr/bin/dc

 

二、安装V2B

1、拉取

git clone https://github.com/v2board/v2board-docker.git
mv v2board-docker v2b

 

配置稳定版

cd v2b/
git submodule update --init
echo '  branch = master' >> .gitmodules
git submodule update --remote

 

配置开发版

cd v2b/
git submodule update --init
echo '  branch = dev' >> .gitmodules
git submodule update --remote

 

2、修改 docker-compose.yaml

若数据库不在本地

version: '3'
services:
  www:
    image: tokumeikoi/lcrp
    volumes:
      - './www:/www'
      - './wwwlogs:/wwwlogs'
      - './caddy.conf:/run/caddy/caddy.conf'
      - './supervisord.conf:/run/supervisor/supervisord.conf'
      - './crontabs.conf:/etc/crontabs/root'
      - './.caddy:/root/.caddy'
    ports:
      - '80:80'
      - '443:443'
    restart: always

 

若数据库在本地

version: '3'
services:
  www:
    image: tokumeikoi/lcrp
    volumes:
      - './www:/www'
      - './wwwlogs:/wwwlogs'
      - './caddy.conf:/run/caddy/caddy.conf'
      - './supervisord.conf:/run/supervisor/supervisord.conf'
      - './crontabs.conf:/etc/crontabs/root'
      - './.caddy:/root/.caddy'
    ports:
      - '80:80'
      - '443:443'
    restart: always
+    links:
+      - mysql
  mysql:
    image: mysql:5.7.29
    volumes:
      - './mysql:/var/lib/mysql'
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 请修改密码
      MYSQL_DATABASE: v2b

 

3、修改caddy.conf

http://你的域名 {
   root /www/public
   fastcgi / /tmp/php-cgi.sock php
    rewrite {
        to {path} {path}/ /index.php?{query}
    }
}

https://你的域名 {
    tls 你的CF邮箱
    root /www/public
    log /wwwlogs/caddy.log
    fastcgi / /tmp/php-cgi.sock php
    rewrite {
        to {path} {path}/ /index.php?{query}
    }
}

 

如果你需要用反代的方式处理订阅链接,那么反代的网址也要填进去。

 

4、安装

先启动Docker

dc up -d

 

进入容器

dc exec www bash

 

配置环境及安装

wget https://getcomposer.org/download/1.9.0/composer.phar
php composer.phar global require hirak/prestissimo
php -d memory_limit=-1 composer.phar install
php artisan v2board:install

 

如果数据库在本地,则配置如下

__     ______  ____                      _
\ \   / /___ \| __ )  ___   __ _ _ __ __| |
 \ \ / /  __) |  _ \ / _ \ / _` | '__/ _` |
  \ V /  / __/| |_) | (_) | (_| | | | (_| |
   \_/  |_____|____/ \___/ \__,_|_|  \__,_|
 请输入数据库地址(默认:localhost) [localhost]:
 > mysql
 请输入数据库名:
 > v2board
 请输入数据库用户名:
 > root
 请输入数据库密码:
 > v2boardisbest
正在导入数据库请稍等...
数据库导入完成
 请输入管理员邮箱?:
 > [email protected]
 请输入管理员密码?:
 > 12345678
一切就绪
访问 http(s)://你的站点/admin 进入管理面板

 

如果数据库在远程,则填写远程地址。建议远程数据库设置防火墙。

 

5、 启动horizon

dc exec www bash

 

php artisan horizon &

 

6、升级

dc exec www bash

 

sh update.sh

 

php artisan horizon &

 

三、其他

1、清除高磁盘占用的日志文件

当V2Board运行一段时间,会发现磁盘可用率变低了。大概率是因为laravel的日志文件造成的。

处理方法如下

进入Docker

dc exec www bash

进入日志文件夹

cd storage/logs

删除久远的日志即可。

 

[c-alert type="success"]打完收工![/c-alert]

 

 

Docker方式部署Caddy+PHP+Mysql
Docker方式部署Caddy+PHP+Mysql
Hetzner Storage Box:可能是性价比最高的存储
Hetzner Storage Box:可能是性价比最高的存储
使用Dnsmasq+SNIproxy一键脚本解决送中机
使用Dnsmasq+SNIproxy一键脚本解决送中机
NetCUP:自建EMBY最具性价比服务器购买指南
NetCUP:自建EMBY最具性价比服务器购买指南
一个让小鸡自动回春的WARP脚本
一个让小鸡自动回春的WARP脚本
快把你的Google Workspace搬到土耳其吧!
快把你的Google Workspace搬到土耳其吧!

215 条评论

  1. kimoez的头像

    很是不明白,端口通讯

  2. Kaime的头像

    学你学习

  3. 111111的头像

    支持支持看看

  4. 嘻嘻的头像

    蛮不错的教程啊

  5. 蛋蛋的头像

    感谢!!

  6. 蛋蛋的头像

    感谢!

  7. a的头像

    ok

  8. 大大的头像

    感谢大佬分享

  9. 大大的头像

    感谢大佬分享

  10. 大大的头像

    感谢大佬分享

  11. CL的头像

    ok

  12. nick的头像

    xuexiYIXIA

  13. 看看的头像

    学习一下

  14. 222的头像

    123

  15. kkos的头像

    大佬nb!!

  16. ss的头像

    have a look

  17. outwit4070的头像

    have a look

  18. harry的头像

    good

  19. wahlau的头像

    感谢大佬分享,牛逼科斯拉!

  20. 罗曼的头像

    牛逼 感谢大佬的分享

  21. Quantummelody的头像

    感谢大佬分享

  22. hellov的头像

    感谢大佬分享

  23. domo的头像

    学习下

  24. 2233的头像

    sssss

  25. qc的头像

    看看改了什么

  26. ads的头像

    速速让我看 Docker Compose

  27. ads的头像

  28. Jasonirani的头像

    为了看到 Docker Compose里的内容也真饿是不容易

  29. Jasonirani的头像

    niajisjdiasjdioasomfaeriom asdjfopisadmfmasdm wekriopwemfocadfa[f=piezui]

  30. sal;fhd的头像

    qweraeifghaou;whgjo

  31. as的头像

    aaaassa

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注