从零开始在centos搭建博客

基于centos 7.9,大部分东西使用docker安装。

软件列表:docker + mysql + wordpress

  1. 安装docker

    yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo yum list docker-ce --showduplicates | sort -r yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum list docker-ce --showduplicates | sort -r yum install docker-ce docker-ce-cli containerd.io systemctl enable docker systemctl start docker yum -y install docker-compose 
  2. 安装nginx(可选)

    按照第一个装就行

    Centos7.9安装和配置Nginx - GreeneGe - 博客园 (cnblogs.com)

    教你如何快速在CentOS7中安装Nginx_nginx_脚本之家 (jb51.net)

  3. 安装protainer

    docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce 
  4. 安装mysql

    docker run -p 3306:3306 --name mysql --restart=always -v /home/docker-workspace/mysql/log:/var/log/mysql -v /home/docker-workspace/mysql/data:/var/lib/mysql -v /home/docker-workspace/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 
  5. 安装WordPress

    • 创建docker-compose.yml,以下是内容

      映射/var/www/html目录,是为了更好的备份。

      version: '3.1'  services:    wordpress:     image: wordpress     restart: always     ports:       - 80:80     environment:       WORDPRESS_DB_HOST: mysql       WORDPRESS_DB_USER: laowang       WORDPRESS_DB_PASSWORD: iambatman       WORDPRESS_DB_NAME: wordpress     volumes:       - /home/docker-workspace/wordpress/html:/var/www/html  volumes:   wordpress: 
    • 启动容器

      docker-compose -f docker-compose.yml up -d # 改下容器名 docker rename  wordpress_wordpress_1 wordpress 
    • 修改上传文件大小限制

      因为wordpress容器没有vi命令,但是有cp命令,咱们曲线救国。上面已经挂载了/home/docker-workspace/wordpress/html目录,所以在此目录新建uploads.ini配置文件

      vim /home/docker-workspace/wordpress/html/uploads.ini 

      以下是uploads.ini的内容

      file_uploads = On memory_limit = 500M upload_max_filesize = 100M post_max_size = 100M max_execution_time = 600 

      进入docker容器的/usr/local/etc/php/conf.d目录,新建uploads.ini配置文件

      # 进入容器 docker exec -it wordpress /bin/bash # 安装vim命令 cp /var/www/html/uploads.ini /usr/local/etc/php/conf.d # 退出容器 exit # 删除配置文件 rm -rf /home/docker-workspace/wordpress/html/uploads.ini 
    • 加入网络

      此时wordpress容器与mysql容器还不能连接,需要加入同一个网络

      #创建网络,名字为mynet docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet #将wordpress与mysql都加入mynet docker network connect  mynet mysql docker network connect  mynet wordpress 
    • 重启docker容器

      docker restart wordpress