wordpress从宝塔升级到docker

news2025/1/12 9:56:02

15还是16年的时候买的阿里云和腾讯云最低配的1核1G。腾讯云和阿里云后来都涨价了,退了涨价多的那个腾讯云,阿里云一直续费到现在,wordpress这个最早的时候是用军哥的lnmp的一键包搭建的,后来改成用了带UI的宝塔,宝塔用了一段时间后发现Let's Encrypt的SSL证书续期总掉,还不如一键包的时候的cert bot。

在互联网上搜索1核1G能否安装docker,回答也是模棱两可。在wordpress上安装UpdraftPlus插件备份全部数据,最后趁着空闲时间安装上docker和docker compose后发现,这个内存cpu占用比宝塔低,感觉是真香。

简单搭了一下wordpress和portainer配置了一下域名,使用UpdraftPlus插件恢复数据,文章、主题、数据都回来了。https的问题后续再搞定。

吐槽一下,现在阿里云不让1核1G重装为Rocky Linux和Alma LInux,为了推广自己的CentOS替代真是用尽策略。现在还保留了已经EOL的CentOS8,试了一下转换Rocky Linux的脚本也失效了。所以我最终退回了Centos 7.8。

1核1G的mysql数据库在阿里云上表现不是很好,很多时候会由于io问题挂掉。所以需要关掉性能模式。阿里云原理上还是虚拟机,大家都知道虚拟机是共享内存cpu硬盘的。一般每周一9点是高峰期,这个时间测下高峰期的iops可以看看你买的机器是否合适。续费的时候需要再测一遍,因为后续还会有同一宿主机的虚拟机入驻。我的mysql不关性能模式在高峰期是直接挂掉的。

迁移后的配置

1.docker配置

docker-compose.yml的配置如下

version: '2'
services:
  portainer:
    image: 'portainer/portainer-ce:latest'
    container_name: portainer
    ports:
      - '19000:9000'
    volumes:
      - '${PWD}/portainer/data:/data'
      - '/var/run/docker.sock:/var/run/docker.sock'
    restart: always
  mysql:
    container_name: mysql
    image: 'mysql:8.0.28'
    volumes:
      - '${PWD}/mysql/db:/var/lib/mysql'
      - '${PWD}/mysql/conf/my.cnf:/etc/mysql/my.cnf'
      - '${PWD}/mysql/init:/docker-entrypoint-initdb.d'
    #ports:
      #- '3306:3306'
    environment:
      - MYSQL_ROOT_PASSWORD=wordpress@2023
      - MYSQL_DATABASE=wordpress
      - MYSQL_USER=wordpress
      - MYSQL_PASSWORD=wordpress@2023
      - TZ=Asia/Shanghai
    restart: always
    command:
      - '--character-set-server=utf8mb4'
      - '--collation-server=utf8mb4_unicode_ci'
  wordpress:
    container_name: wordpress
    depends_on:
      - mysql
    image: 'wordpress:latest'
    volumes:
      - '${PWD}/wordpress:/var/www/html'
    #ports:
      #- '80:80'
    restart: always
    environment:
      WORDPRESS_DB_HOST: 'mysql:3306'
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress@2023
      WORDPRESS_DB_NAME: wordpress
  nginx:
    container_name: nginx
    image: 'nginx:1.20.0'
    ports:
      - '80:80'
    volumes:
      - '${PWD}/nginx/html:/usr/share/nginx/html'
      - '${PWD}/nginx/conf.d:/etc/nginx/conf.d'
    environment:
      - TZ=Asia/Shanghai
    restart: always

nginx配置文件default.conf

server {
    listen       80;
    listen  [::]:80;
    server_name  blog.example.com;

    location / {
        proxy_pass http://wordpress/;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
server {
    listen       80;
    listen  [::]:80;
    server_name  www.example.com;
    return 301 http://blog.example.com;

}

mysql配置文件my.cnf

# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA

#
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
secure-file-priv= NULL

# Custom config should go here
!includedir /etc/mysql/conf.d/

访问blog.example.com进行wordpress初始化配置

然后安装UpdraftPlus插件恢复数据。

2.关闭mysql性能模式

命令如下

全局查找配置文件

#全局查找配置文件
find / -name my.cnf
#非容器模式下的路径是/etc/my,cnf
#容器下的路径是/etc/mysql/my.cnf

编辑配置文件

vi /etc/mysql/my.cnf

在[mysqld]后加

performance_schema=off

重启mysql生效

3.安装安全增强插件

默认情况下公网总有一些ip扫描xmlrpc.php,所以我们需要安装爆破扫描插件禁掉这些访问。

如果想查看你的xmlrpc.php服务是否开启,可以访问 http://www.example.com/xmlrpc.php有返回则为开启状态。

需要安装的插件名为Disable XML-RPC-API ,安装后默认禁用xmlrpc.php访问,可添加ip白名单

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/379686.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

4.文件管理

文章目录1、初识文件管理1.1、回顾1.2、文件的属性1.3、无结构文件/有结构文件1.4、文件之间应该怎样组织起来?1.5、操作系统应该向上提供哪些功能?1.6、从上往下看,文件应如何存放在外存?1.7、其他需要由操作系统实现的文件管理功…

分页与分段

前面我们分析了虚拟地址和物理地址 我们这里进行一个简单的分析 这个是程序运行时的地址映射 那么这些碎片,我们现在的操作系统究竟如何处理呢? 我们再引入一个实际问题 我们如何把右边的进程p塞入左边的内存空间里面 有一种方法将p5kill掉&#xff…

Python - SQL入门和实战

数据来源 01 SQL前言 无处不在的SQL 后续学习的铺垫 学到什么程度 黑马程序员MySQL知识精讲mysql实战案例_零基础mysql数据库入门到高级全套教程_哔哩哔哩_bilibili 总结 02 数据库介绍 无处不在的数据库 数据库如何存储数据 数据库管理系统(数据库软件&#xf…

七、标签传播与节点分类【CS224W】(Datawhale组队学习)

开源内容:https://github.com/TommyZihao/zihao_course/tree/main/CS224W 子豪兄B 站视频:https://space.bilibili.com/1900783/channel/collectiondetail?sid915098 斯坦福官方课程主页:https://web.stanford.edu/class/cs224w 文章目录半…

或许你想要的画图工具在这里

之前文章发布后,有小伙伴问下面的画怎么画的(偷偷告诉你,其实我是用铅笔水彩笔画的),哈哈,开玩笑了。其实这些图都是用Excalidraw 画出来的。 我们平常不管是工作中,还是在日常写文章&#x…

pdf压缩文件大小的方法是什么?word文件怎么批量转换成pdf格式?

大家在存储文件时,通常会遇到一些较大的文件,这时需要对其进行压缩处理。下面介绍一下如何压缩PDF文件大小以及批量转换Word文件为PDF格式。pdf压缩文件大小的方法是什么?1.打开小圆象PDF转换器,选择“PDF压缩”功能。2.在“PDF压缩”界面中…

二、CSS

一、CSSHTML的结合方式 1、第一种&#xff1a;在标签的style属性上设置"key:value value;"&#xff0c;修改标签样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title>…

8位单片机(51 STC8)C语言处理32位unsigned long型数据之计算出错

一、问题描述 入门51没多久后就主攻32了&#xff0c;最近又搞起51&#xff0c;移植一个软定时器代码到STC8上&#xff0c;结果出现了奇怪的问题&#xff0c;而这种问题在各种32位单片机上都是不曾有的。 有如下代码&#xff0c;实现了软定时器。使用内部IRC&#xff0c;22.1184…

LabVIEW与Web通讯

LabVIEW与Web通讯Web客户端可通过LabVIEWWeb服务与远程LabVIEW应用程序交换数据。Web服务由运行在服务器上的VI和其他文件组成&#xff0c;这些VI对应于客户端发出的HTTP请求。LabVIEWWeb服务仅在LabVIEW完整版开发系统和LabVIEW专业版开发系统中可用。Web服务用于下列情况&…

服务器、存储、数据保护……又把奖拿了个遍

新一代高端存储      新一代中端存储      新一代入门级存储      新的数据保护产品线      新一代服务器和边缘服务器新品      … …      戴尔科技集团      在过去一年      继续保持强劲研发创新势头      不仅在硬件层面持续升级  …

NXP iMX8系列处理器Pin Multiplexing定义说明

By Toradex秦海1). 简介为了提高处理器的设计灵活性和可用性&#xff0c;NXP的所有i.MX系列处理器都配备了基于 IOMUX Controller (IOMUXC)和IOMUX来使能Pin Mux功能&#xff0c;使得一个特定的IO管脚可以选择不同的可能多达8种的功能定义模块(ALT0, ALT1, ALT2, ALT3...)&…

YOLOv5全面解析教程⑤:计算mAP用到的Numpy函数详解

作者 | Fengwen、BBuf 本文主要介绍在One-YOLOv5项目中计算mAP用到的一些numpy操作&#xff0c;这些numpy操作使用在utils/metrics.py中。本文是《YOLOv5全面解析教程④&#xff1a;目标检测模型精确度评估》的补充&#xff0c;希望能帮助到小伙伴们。 欢迎Star、试用One-YOLOv…

openpnp - configure - 主次基准点矫正

文章目录openpnp - configure - 主次基准点矫正概述备注ENDopenpnp - configure - 主次基准点矫正 概述 查找问题, 视觉里程碑只剩下4个问题了. 先看下设备上的主校准点, 我设备上的主校准点在设备前部的一个铝合金块上, 一块只带一个mark点的小PCB, 两边用螺丝拧住了.比PCB…

(五十四)大白话索引的页存储物理结构,是如何用B+树来实现的?.md

上一次我们给大家说了主键索引的目录结构&#xff0c;只要在一个主键索引里包含每个数据页跟他最小主键值&#xff0c;就可以组成一个索引目录&#xff0c;然后后续你查询主键值&#xff0c;就可以在目录里二分查找直接定位到那条数据所属的数据页&#xff0c;接着到数据页里二…

腾讯云轻量应用服务器配置表汇总(2核2G/2核4G/4核8G/8核16G)

轻量应用服务器&#xff08;TencentCloud Lighthouse&#xff09;是新一代开箱即用、面向轻量应用场景的云服务器产品&#xff0c;助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、APP、电商应用、云盘/图床和开发测试环境&#xff0c;相比普通云服务器…

我的 System Verilog 学习记录(7)

引言 本文简单介绍 SystemVerilog 语言的 testbench 组件间通信和数据交互。 前文链接&#xff1a; 我的 System Verilog 学习记录&#xff08;1&#xff09; 我的 System Verilog 学习记录&#xff08;2&#xff09; 我的 System Verilog 学习记录&#xff08;3&#xff…

使用msvc命令行或msbuild编译dx3程序

从这里下载&#xff1a;https://github.com/microsoft/DirectX-Graphics-Samples cl.exe /D "UNICODE" /D "_UNICODE" *.cpp /EHsc -I C:\Users\54930\Downloads\DirectX-Graphics-Samples-master\Samples\Desktop\D3D12nBodyGravity\src\WinPixEventRun…

为什么DNS安全很重要

几乎所有web流量都需要标准DNS查询&#xff0c;这为DNS攻击创造了机会&#xff0c;比如DNS劫持和中间人攻击。这些攻击可以将网站的入站流量重定向到网站的伪造副本&#xff0c;收集敏感用户信息&#xff0c;并使企业承担重大责任。目前防范DNS威胁的最普遍方法之一是采用DNSSE…

为什么地图可视化炙手可热?

我们在谈到数据可视化的时候&#xff0c;可能第一反应就是中间有一个地图样式的大屏图。但有没有想过&#xff0c;为什么大多数的可视化大屏中间都是一张地图的样子&#xff1f;这张地图样式的模块究竟是什么呢&#xff1f;它又是怎么做出来的&#xff1f; 其实这张地图样式的…

Linux基本命令复习-面试急救版本

1、file 通过探测文件内容判断文件类型&#xff0c;使用权是所有用户&#xff0c; file[options]文件名2、mkdir/rmdir 创建文件目录&#xff08;文件夹&#xff09;/删除文件目录 3、grep 指定文件中搜索的特定内容 4、find 通过文件名搜索文件 find name 文件名 5、ps 查…