以前自己写过一个博客,虽然逻辑上都实现了,但是前端功底不高,总是实现不了很好看的界面,导致几乎没有在建好的个人博客上写文章。最近才知道有wordpress这种建站神器,所以初始化了虚拟机来捣鼓一下。
操作系统:Ubuntu 20.04 64位(阿里云的服务器)
以前自己写过一个博客,虽然逻辑上都实现了,但是前端功底不高,总是实现不了很好看的界面,导致几乎没有在建好的个人博客上写文章。最近才知道有wordpress这种建站神器,所以初始化了虚拟机来捣鼓一下。
操作系统:Ubuntu 20.04 64位(阿里云的服务器)
1、docker安装
用官方安装脚本自动安装:
$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
查看docker版本:
2、docker-compose的安装过程
# Step 1: 以ubuntu为例,下载docker-compose
$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# Step 2: 给予docker-compose可执行权限
$ sudo chmod +x /usr/local/bin/docker-compose
# Step 3: 查看docker-compose版本
$ docker-compose --version
# 3、docker安装mysql
# 拉取mysql最新版本的镜像
$ docker pull mysql:latest
# 查看是否已经安装好mysql
$ docker images
# 运行mysql容器
$ docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
# docker ps 命令查看是否安装成功
$ docker ps
4、安装配置Wordpress
$ docker pull wordpress:latest
# 运行wordpress容器并连接mysql
docker run -d --name wordpress --link mysql-test:mysql -p 80:80 wordpress
这时,在浏览器中输入 公网ip:80 就出现wordpress页面了
5、docker-compose 配置
docker还是用docker-compose 方便,所以尝试用docker-compose
$ mkdir wp
$ cd wp
# 创建docker-compose.yml
$ vim docker-compose.yml
docker-compose.yml
version: "3.9"
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- wordpress_data:/var/www/html
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
wordpress_data: {}
根据需求修改上面代码!
# 启动
$ docker-compose up
启动后如果发现还是没有办法访问网站,需要在服务器的安全组那里查看端口有没有放行!
域名解析后 域名:8000 就可以访问了
6、Nginx
单独拉取nginx
$ docker pull nginx:latest
$ docker run -d --name nginx -p 80:80 nginx
相关文件在容器中的位置:
日志位置:/var/log/nginx/
配置文件位置:/etc/nginx/
项目位置:/usr/share/nginx/html
在nginx.conf的http里面添加
server {
listen 80;
server_name ip或者域名;
location / {
proxy_pass http://ip:8000;
}
}
启动nginx和上面的mysql和wordpress容器即可!
参考资料:
https://baijiahao.baidu.com/s?id=1718950982437256890&wfr=spider&for=pc
https://blog.csdn.net/weixin_51560103/article/details/121127748
https://blog.csdn.net/qq_15761035/article/details/114578496