以前自己写过一个博客,虽然逻辑上都实现了,但是前端功底不高,总是实现不了很好看的界面,导致几乎没有在建好的个人博客上写文章。最近才知道有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

最后编辑:2022年03月09日 ©著作权归作者所有