您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程

docker怎么搭建wordpress网站

乐萱2025-03-20WordPress教程已有人查阅

导读一、 创建nginx镜像二、创建mariadb镜像三、关联容器3.1 关闭web容器3.2 测试web能否访问mariadb四、安装wordpress4.1 安装4.2 数据库配置

Version: 1.0
实验环境
系统:CentOS Linux release 7.2.1511
内核:Linux C7 3.10.0-327.el7.x86_64
软件源 163+epel
yum -y install wget vim
cd /etc/yum.repos.d/
rm -f ./*
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
cd /etc/pki/rpm-gpg/
wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
rpm --import RPM-GPG-KEY-EPEL-7
yum clean all
yum makecache
# docker version
Client:
Version: 1.12.6
API version: 1.24
Package version: docker-common-1.12.6-16.el7.centos.x86_64
Go version: go1.7.4
Git commit: 3a094bd/1.12.6
Built: Fri Apr 14 13:46:13 2017
OS/Arch: linux/amd64
一、 创建nginx镜像
mkdir docker
cd docker
cat Dockerfile
FROM centos:centos7
MAINTAINER woodman
RUN yum -y install wget
RUN rm -f /etc/yum.repos.d/*
RUN wget http://mirrors.163.com/.help/CentOS7-Base-163.repo && mv CentOS7-Base-163.repo /etc/yum.repos.d/163.repo
RUN rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
RUN cd /etc/pki/rpm-gpg/
RUN wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
RUN rpm -import RPM-GPG-KEY-EPEL-7
RUN yum clean all
RUN yum install httpd php php-mysql php-mbstring -y && yum clean all
EXPOSE 80
CMD [“/usr/sbin/httpd”,”-f”,”/etc/httpd/conf/httpd.conf”,”-DFOREGROUND”]
#创建
docker build -f Dockerfile -t web:centos7 .
二、创建mariadb镜像
#cat Dockerfile
FROM centos:centos7
MAINTAINER woodman
RUN yum -y install wget
RUN rm -f /etc/yum.repos.d/*
RUN rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
RUN cd /etc/pki/rpm-gpg/
RUN wget https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
RUN rpm --import RPM-GPG-KEY-EPEL-7
RUN wget http://mirrors.163.com/.help/CentOS7-Base-163.repo && mv CentOS7-Base-163.repo /etc/yum.repos.d/163.repo
RUN yum clean all
RUN yum install mariadb-server openssh-server -y && yum clean all
RUN mysql_install_db && chown -R mysql:mysql /var/lib/mysql/
VOLUME /var/lib/mysql/
ADD mysql.sh /mysql.sh
RUN chmod 755 /mysql.sh
EXPOSE 22
EXPOSE 3306
CMD ["/mysql.sh"]
cat mysql.sh
#!/bin/bash
# Author:woodman
mysqld_safe &
sleep 5
mysqladmin -uroot password '123456'
mysql -uroot -p123456 -e "GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123456';FLUSH PRIVILEGES;"
sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
echo 123456 | passwd --stdin root
/usr/sbin/sshd -D
docker build -f Dockerfile -t mariadb:centos7 .
docker run -d -p 22222:22 -v /var/mysql:/var/lib/mysql --name db mariadb:centos7
三、关联容器3.1 关闭web容器
docker stop web
docker rm web
3.2 测试web能否访问mariadb
#docker run -it -p 80:80 -v /var/web/:/var/ /html/ --link=db --name=web web:centos7 /bin/bash
#yum -y install mariadb
#mysql -uroot -p123456 -h db
#exit; exti ; docker rm web
#docker run -d -p 80:80 -v /var/web/:/var/ /html/ --link=db:todb --name=web web:centos7
四、安装wordpress4.1 安装
wget https://cn.wordpress.org/wordpress-4.7.3-zh_CN.tar.gz
tar -zxf latest.tar.gz
cp -a wordpress/* /var/web
4.2 数据库配置
ssh 192.168.1.7 -p 22222
mysql -uroot -p123456
MariaDB [(none)]> CREATE DATABASE wordpress;
MariaDB [(none)]> GRANT ALL ON wordpress.* TO 'wordpress'@'%' IDENTIFIED BY 'wordpress';
MariaDB [(none)]> FLUSH PRIVILEGES;
>exit;
#exit;
4.3 设置 wordpress
docker run -ti --rm -v /var/web/:/var/ /html/ --entrypoint="/bin/bash" web:centos7 -c "ls -ln /var/ /html"
docker run -ti --rm --entrypoint="/bin/bash" mariadb:centos7 -c "ls -ln /var/lib/mysql"
#文件属性显示一堆'?'
#setenforce 0
访问:http://x.x.x.x
数据库名:wordpress
用户名:wordpress
密码:wordpress
数据库主机:db
表前缀:wp_
提交
4.4 创建wp-config.php
web中的内容复制内贴到wp-config.php
点击install
cat /renn/myweb/wp-config.php
<?php
/**
* The base configuration for WordPress
*
* The wp-config.php creation script uses this file during the
* installation. You don't have to use the web site, you can
* copy this file to "wp-config.php" and fill in the values.
*
* This file contains the following configurations:
*
* * MySQL settings
* * Secret keys
* * Database table prefix
* * ABSPATH
*
* @link https://codex.wordpress.org/Editing_wp-config.php
*
* @package WordPress
*/
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');
/** MySQL database username */
define('DB_USER', 'wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'wordpress');
/** MySQL hostname */
define('DB_HOST', 'db');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8mb4');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
/**#@+
* Authentication Unique Keys and Salts.
*
* Change these to different unique phrases!
* You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
* You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
*
* @since 2.6.0
*/
define('AUTH_KEY', 'zOf g^T@Fg~eZy,kEsstBc+=3DjY;F`.7MKtOd_J4?`0tKv.r7B,cyHTC(c<L^pb');
define('SECURE_AUTH_KEY', '?4a! VG;6DZwO_^aEm9%7zz=eV;O141za] NRk,vs0Zk#y{!ZMxveWa*?!=Lk34(');
define('LOGGED_IN_KEY', 'y@9@FV2EEX[g2FmENZ4sB{)k:x+W3{x?o1-K}$;UkzA @)IGzY6x[TaK?ninGkg:');
define('NONCE_KEY', 'EC95aN/5-hQUK%1t<UK6$BlS=ngt=eT>3m_h she31E5.8O&O;V5z`j6R71nCW>1');
define('AUTH_SALT', '@xSzJTwfL^<7HJG8i`7:@Y1.$vT[0}AD,(:B:Emb`H142P4]P2*/y`V>nex94>et');
define('SECURE_AUTH_SALT', 'f*4R2&WrJd{XcL][Jn9#RM$1aLTzp1A1a|cj+$6?2^,W&|`t#4n7VL|n(=V1:,P_');
define('LOGGED_IN_SALT', '*62i~DFK~&b8b#%UaZZiC72)W=$i;I`ZyU2w<_+Cb>ubVP/.J~i]a
define('NONCE_SALT', 'Caf6?g(]8b r@[pq9c4r,elRW_eZQE{oq!w_8,xd/qa`D[zMb-Pc!em_?}t:nVnx');
/**#@-*/
/**
* WordPress Database Table prefix.
*
* You can have multiple installations in one database if you give each
* a unique prefix. Only numbers, letters, and underscores please!
*/
$table_prefix = 'wp_';
/**
* For developers: WordPress debugging mode.
*
* Change this to true to enable the display of notices during development.
* It is strongly recommended that plugin and theme developers use WP_DEBUG
* in their development environments.
*
* For information on other constants that can be used for debugging,
* visit the Codex.
*
* @link https://codex.wordpress.org/Debugging_in_WordPress
*/
define('WP_DEBUG', false);
/* That's all, stop editing! Happy blogging. */
/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

本文标签:

很赞哦! ()

相关源码

  • (响应式)轴承机械五金零件产品pbootcms落地推广单页源码下载为轴承、机械零件等工业产品打造的响应式单页模板,基于PbootCMS内核开发,助力企业快速构建专业级产品展示页面。模板采用工业风设计语言,突出产品参数与性能优势,适用于设备制造商、零部件供应商等B2B场景推广。查看源码
  • 自适应黑色建筑装饰设计公司个人工作室pbootcms模板基于PbootCMS内核开发的黑金风格模板,为建筑装饰、工程设计类企业打造,采用‌开源架构‌,支持跨行业快速适配,核心优势如下: 查看源码
  • 帝国cms淘宝客京东联盟网站整站源码下载本模板基于帝国CMS内核深度开发,为淘宝客行业量身定制。随着腾讯微信与淘宝生态的互联互通,淘宝客链接现可在微信、QQ等平台直接分享,为推广带来更多便利。模板特别优化了店铺推广功能,有效避免商品下架导致的链接失效问题,同时支持京东联盟等多平台商品推广。查看源码
  • 帝国cms7.5淘宝客电商品牌特价带手机站带会员模板下载为电商品牌特价展示设计的帝国CMS模板,集成PC端与移动端双平台适配。采用瀑布流商品布局,支持品牌分类聚合展示,突出特价促销视觉冲击力。查看源码
  • (PC+WAP)安保服务保安保镖模板免费下载本模板基于PbootCMS内核开发,为安保服务企业量身打造。设计风格严谨专业,突出安保行业的安全、可靠特性,展示企业服务项目与实力。采用响应式设计,PC与移动端数据同步,管理便捷。模板布局合理查看源码
  • 帝国cms大气淘宝客网站源码带手机版带火车头采集本款创意礼物导购网站模板为礼物类电商平台设计,采用清爽简约的界面风格,具备完善的商品导购功能。系统支持在文章攻略中灵活插入商品购买链接,实现内容与电商的结合。查看源码
分享笔记 (共有 篇笔记)
验证码: