PVE下创建CT,用Docker 安装wordpress

Linux

由于工作需要,几乎每隔1-2年就要更新网站,因为都是用的轻量云,反应速度太慢,所以都要先在本地设计好,再迁移到服务器上,现记录过程以便日后重复使用。

准备工作

1、基于PVE的安装

2、更改ProxmoxVE的LXC仓库为国内源

3、建立PVE – CentOS容器

创建wordpress的LXC
更改LXC仓库源
首先,我们还是需要更改ProxmoxVE的LXC仓库为国内源的下载地址,不然龟速的下载,会让你怀疑人生。

SSH连接PVE,复制下面代码,并一起粘贴并输入回车运行。

grep -rn "download.proxmox.com" /usr/share/perl5/PVE/*
sed -i.bak "s#http://download.proxmox.com/images#https://mirrors.ustc.edu.cn/proxmox/images#g" 
/usr/share/perl5/PVE/APLInfo.pm
wget -O /var/lib/pve-manager/apl-info/mirrors.ustc.edu.cn 
https://mirrors.ustc.edu.cn/proxmox/images/aplinfo.dat

下载Centos7镜像文件
依次找到 “local – 内容 – 模板 ” 然后下载Centos7的镜像文件模板。
如图所示,在相应的地方点击去到模板下载页面,选择需要下载的模板,点击下载
2022-08-12T03:30:27.png

创建CT

1、点击PVE右上角创建CT
2022-08-12T03:15:12.png

2、输入密码和确认密码,为了方便辨识,主机名那里输入自定义名称,注意无特权容器那里的勾去掉
2022-08-12T03:16:32.png

3、选择储存位置和系统模板
2022-08-12T03:19:32.png

4、选择跟磁盘的位置和磁盘大小
2022-08-12T03:20:23.png

5、选择CPU核心数,按实际需要选择,但不能超过物理核心数
2022-08-12T03:21:19.png

6、选择内存大小,按实际需求选择,还是一样不能超过物理内存容量大小
2022-08-12T03:22:23.png

7、填入静态IP地址和网关
2022-08-12T03:24:17.png

8、直接到最后一步,完成CT的建立
2022-08-12T03:26:51.png

设置 第三方SSH工具登录

运行刚才创建的的CT容器。我们转到控制台,输入刚才设置的密码。(用户名为root)

因为作者是不喜欢在控制台里面操作SSH,所以我们给他安装一个SSH连接工具,并设置允许第三方SSH工具登录。

登录控制台,首先更新源 yum -y update 然后安装 openssh-server。命令如下

yum install -y openssl openssh-server

修改配置文件 vi /etc/ssh/sshd_config ,把 #Port 22 前面的 #去掉,打开22端口,(当然你可以自定义)

2022-08-12T03:42:27.png

然后一起贴入下面三行命令:

sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/ssh/sshd_config
reboot

安装docker

输入以下命令

yum list docker-ce --showduplicates | sort -r
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun    ##这里使用国内阿里云的源

完成后启动docker

systemctl start docker

查看docker的信息

 systemctl status docker

安装数据库-mariadb

yum install mariadb-server mariadb

完成后启动mariadb

systemctl start mariadb

开机自动启mariadb

systemctl enable mariadb

查看mariadb版本

 mysqladmin --version

设置mariadb管理账号和密码

mysqladmin -u root password "123456";   ##""里填入自己设置的密码

登录mariadb

mysql -u root -p

2022-08-12T06:22:10.png

2022-08-12T06:23:53.png

安装docker管理图形界面portainer

docker pull portainer/portainer-ce

下载完之后,运行

docker run -d --name portainerUI --restart always --privileged -p 9000:9000 -v /var/run/docker.sock:/var/   run/docker.sock portainer/portainer-ce

安装docker版wordpress

docker pull wordpress

下载完之后,运行

docker run --name test -p 8080:80 -d wordpress    ##test为镜像运行时的名称

建立数据库

先查看数据库列表

show databases;

然后建立数据库

create database test;    ##test为自命名数据库名称,可输入自己想要的名称为数据库名称

因为需要联通docker镜像与本地数据库,所以还需要输入以下命令

grant all privileges on *.* to 'root'@'172.17.0.3' identified by '123456' with grant option;

##'172.17.0.3'为docker镜像运行时所处的IP段,意思是让这个网段能通过该账号密码登录访问数据库

或者用以下命令,开启所有IP访问数据库

grant all privileges on *.* to 'root'@'%' identified by '123456';

刷新设置

flush privileges;

要是觉得自己建立的数据库出问题了,或者名字输入错误了,可以删除数据库

drop database test;

设置wordpress

输入TC的IP:8080,就可以访问wordpress后台了,

2022-08-12T06:46:48.png

这里是填写内容注意的地方

2022-08-12T06:50:19.png

之后按图所示操作,填入相关信息

2022-08-12T06:52:20.png

2022-08-12T06:52:33.png

2022-08-12T06:52:54.png

至此,wordpress安装成功。

docker版本的wordpress操作中的注意事项

wordpress如果要上传安装主题或者插件,有文件大小限制,这个时候,需要修改php相关参数才能上传,具体要修改哪里,可以在网上翻阅,这里上传一个基本上能满足所有插件运行的php.ini文件,直接拷贝进镜像就可以消除这个限制了。

php.ini

因为是镜像,所以对其内部文件需要操作的话,就要使用docker的命令

先查看镜像的CONTAINER ID

docker ps

然后把php.ini文件拷贝到镜像内

docker cp /mnt/php.ini bb411e5594c8:/usr/local/etc/php  ##bb411e5594c8为镜像的CONTAINER ID,docker cp为docker的拷贝命令,剩余部分是文件的路径

完成后,需要重启一下镜像

docker restart test

新评论

称呼不能为空
邮箱格式不合法
网站格式不合法
内容不能为空