银子弹

About industrial design engineering..

Tag: docker

Docker wordpress 的定期自动备份

删除所有现成的备份 执行mysqldump导出数据库命令 打包html scp传输两个文件到远程备份服务器的目录,同时使用工具sshpass 传递密码给scp命令,省事。 全部使用bash脚本,crontab -e 添加每12小时运行一次。 * 12 * * * /docker2/wp/2web/back.sh 搞定。

Read More

稍微解决一下docker WordPress的文件夹权限问题

今天升级插件发现,发现docker wp 无法创建文件夹,尝试几个办法都不行: 往docker-compose 添加privileged: true 没有效果 往docker-compose 添加user: “33:33” 也就是代表www-data:www-data也不行。。 最后发现 wp的项目文件夹是-v 映射到容器内的,给wp-content 增加权限可以解决,但是不知道安不安全,暂时先这样吧: chmod -R 777 wp-content 感觉还是不安全,改回来。。 chmod -R 755 wp-content 办法改为,进入wordpress 的container, 执行chown -R www-data:www-data /var/www/html 同时 wp-config 增加了一句:define(‘FS_METHOD’, ‘direct’);

Read More

Docker 化 Kodexplorer 的总结

从frantech买了storage, 价格大概是256GB 15 USD,挂载在VPS上面的。开始转移我的KOD到新的VPS上面,同时尝试用docker化运行。 思路是: 用docker 文件生成customize 的 image,其中有 两个主要的 php7.1,php需要安装扩展插件,通过RUN命令搞定 wyveo/nginx-php-fpm:php71 ,包括写好nginx conf配置的nginx,基本只要打开填入域名就可以了。后期可以考虑只用nginx 标准官方的。 第一次运行后,docker container cp 命令从镜像拷贝整个/etc/nginx出来,并配置default.conf 中的域名即可。 生产运行: -v 镜像kod 目录, -v 镜像我的block storage 目录/mnt/files 到nginx html里面 -v log -v nginx 配置文件进去 -p 80:80端口, -d daemon, -t name, 最后填上定制的image 名称 最后我的dockerfile: 5. 生产运行的 docker run 命令

Read More

WP带SSL迁移到Docker一些总结

HTTPS的端口是443, HTTP的端口是80,可以通过命令 netstat -tnl查看 SSL用最基本的certbot就可以了,免费万岁,多捐赠 SSL防止的就是很常见的中间人攻击,知乎用户举例,你出去旅游给亲人寄一个明星片,结果亲人收到,变成斯诺登的求助/威胁信,我在哪哪哪,我有危险,快打钱救我!被插广告也是类似原理。 SSL证书保存在网站目录: – /web/ssl:/etc/letsencrypt 不需要备份,迁移之后直接renewal就行了 平时需要renewal, 主要通过两个命令, 都做成bash script就好了。 docker-compose run certbot renew 和 docker-compose run kill -s SIGHUP webserver 其中: kill -s SIGHUP 会reload 配置 crontab -e 加入这个 bash script 每12小时运行一次。 主要过程: 修改docker-compose.yml的配置,增加端口, 数据卷,certbot服务。 其中:certbot的数据卷镜像用于nginx和cerbot共享,要不要挂载出来,问题都不大。所以用卷,不用目录。 其中:增加映射端口 443 第一次测试: 第一次获取证书运行命令用–staging, 之后用–force-renewal 第一次测试:docker-compose up -d 之后,需要检查 certbot的logs 是否成功获得了SSL证书: 方式一就是 docker-compose ps […]

Read More

Docker Build WordPress 的思路1

1. 首先创建mysql 的 container,通过命令行: docker run –name wp-mysql -e MYSQL_ROOT_PASSWORD=test -d -p 3306:3306 -v /root/docker-wp/web3:/test mysql:5.7 其中 -v: 挂载主机目录 /root/docker-wp/web3 到 镜像中的/test 然后通过命令mysql 导入数据库 2. 创建wordpress 的container: docker run -d –name wp –link wp-mysql:mysql -p 80:80 -v /root/docker-wp/web3/wp/wp:/var/www/html wordpress 名称–name wp;–link 链接wp-mysql; -p端口80;-v 挂载主文件目录 /root/docker-wp/web3/wp/wp 到镜像目录 /var/www/html 现在可以启动了,但是wp用的是新的数据库名 wordpress, 修改wp-config.php其中的db name 改成刚才导入的,我的是blogdb 3. 基本可以运行了,下一步是nginx了

Read More