Docker构建wordpress错误解决

213 阅读2分钟

使用docker来生成wordperss只需要用到配置文件来进行生成会更加方便,这是笔者在使用docker构建的时候遇到的一些问题,做一些简单的记录,也帮助大家避坑。

使用配置文件生成对应容器

version: '3.1'
services:
  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html
  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql
volumes:
  wordpress:
  db:

image.png mac的M1系统下直接按上面的配置来跑可能会失败,这里也是笔者自己找了一下方法,在配置文件中多加一行配置即可,至于是什么原因大家可以自己去了解一下

这是由于使用wordpress需要用到mysql的服务,像类似需要多个容器一起跑的时候我们可以直接新建一个yml,使用docker-compose命令来对配置文件生成对应的容器

image.png

笔者这边用到的是m1的mac,所以在配置文件的时候需要加一行

version: '3.1'
services:
  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress:/var/www/html
  db:
    platform: linux/x86_64
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql
volumes:
  wordpress:
  db:

image.png 这里笔者的路径是在desktop路径下面,所以需要将上面的配置文件yml也放到desktop的目录下,并且命名为docker-compose.yml才能执行成功。 在命令行中执行 docker-compose up -d image.png 执行完成后会有对应的容器生成,这里是生成了mysql和wordpress的俩个容器,可以在docker中进行查看,由于我们是用yml的方式进行生成的,所以俩个容器会被放置在desktop的目录下面

image.png

image.png

构建成功

容器已经构建完成,刚刚的配置文件中声明的wordpress端口是8080,让我们在浏览器中访问试试效果吧

image.png

那么到这里整个wordpress的构建就已经完成了,有兴趣的小伙伴可以自己动手试试,本文只是列出大概的一个生成wordpress的几个要点。

本文正在参加「金石计划」