您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
docker安装wordpress的方法示例
碧凡2025-03-16WordPress教程已有人查阅
导读1、下载centos镜像docker pull centos2、安装mysql数据库FROM centos #原镜像MAINTAINER
RUN yum -y install mariadb-server openssh-server && yum clean all #yum安
1、下载centos镜像
docker pull centos
2、安装mysql数据库
FROM centos #原镜像
docker build -t cc/wordpress:db .
3、生成php镜像
docker build -t cc/wordpress:php .
4、生成nginx镜像
生成nginx镜像
docker build -t cc/wordpress:nginx .
5、运行镜像
启动db docker run -d -p 20002:22 --name db cc/wordpress:db 可以用ssh 20002来管理db这个容器
docker run -d --name=php -v /webapp:/wordpress cc/wordpress:php
docker run -d -p 443:443 --name nginx --link=php:php -v /webapp:/wordpress cc/wordpress:nginx
docker pull centos
2、安装mysql数据库
FROM centos #原镜像
MAINTAINER
RUN yum -y install mariadb-server openssh-server && yum clean all #yum安装相应的包
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 #暴露22端口
EXPOSE 3306 #暴露3306端口
CMD ["/mysql.sh"] #运行脚本
#!/bin/bash
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
执行Dockfile 生成db镜像docker build -t cc/wordpress:db .
3、生成php镜像
FROM centos
MAINTAINER 547253687@qq.com
RUN yum -y install libxml2 libxml2-devel bzip2 bzip2-devel libjpeg-turbo libjpeg-turbo-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel libcurl libcurl-devel gcc gcc-c++ c++ glibc make autoconf openssl openssl-devel ntpdate crontabs
ADD libmcrypt-2.5.8.tar.gz /usr/local/src
WORKDIR /usr/local/src/libmcrypt-2.5.8/
RUN ./configure && make && make install
ADD php-5.4.44.tar.gz /usr/local/src
WORKDIR /usr/local/src/php-5.4.44/
RUN ./configure --prefix=/usr/local/php --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-openssl --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-mcrypt --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-config-file-path=/usr/local/php/etc --with-bz2 --with-gd && make && make install
COPY php.ini-production /usr/local/php/etc/php.ini
COPY php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
RUN useradd -M -s /sbin/nologin php
RUN sed -i -e 's@;pid = run/php-fpm.pid@pid = run/php-fpm.pid@g' -e 's@nobody@php@g' -e 's@listen = 127.0.0.1:9000@listen = 0.0.0.0:9000@g' /usr/local/php/etc/php-fpm.conf
RUN sed -i 's@;daemonize = yes@daemonize = no@g' /usr/local/php/etc/php-fpm.conf
EXPOSE 9000
CMD ["/usr/local/php/sbin/php-fpm"]
生成php镜像docker build -t cc/wordpress:php .
4、生成nginx镜像
FROM centos
MAINTAINER 547253687@qq.com
RUN groupadd
RUN useradd -g
ADD nginx-1.15.2.tar.gz /usr/local/src
RUN yum install libxslt-devel -y gd gd-devel GeoIP GeoIP-devel pcre pcre-devel gcc gcc-c++ c++ glibc make autoconf openssl openssl-devel ntpdate crontabs
WORKDIR /usr/local/src/nginx-1.15.2
RUN ./configure --user=--group=--prefix=/usr/local/nginx --with-file-aio --with-ipv6 --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-
http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradatio
n_module --with-http_stub_status_module && make && make install
COPY nginx.conf /usr/local/nginx/conf/nginx.conf
COPY fastcgi_params /usr/local/nginx/conf/fastcgi_params
RUN mkdir -p /data/proxy_cache_path/
RUN mkdir -p /usr/local/nginx/ssl/
RUN mkdir -p /usr/local/nginx/conf.d/
RUN mkdir -p /usr/local/nginx/log/
COPY ssl/cert.key /usr/local/nginx/ssl/
COPY ssl/cert.pem /usr/local/nginx/ssl/
COPY wordpress.conf /usr/local/nginx/conf.d/
EXPOSE 80
CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"]
nginx.conf配置文件
user;
worker_processes 1;
error_log /usr/local/nginx/log/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /usr/local/nginx/conf/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /usr/local/nginx/log/access.log main;
sendfile on;
#tcp_nopush on;
#gzip on;
client_header_timeout 10;
client_body_timeout 10;
reset_timedout_connection on;
keepalive_timeout 60 50;
client_header_buffer_size 4k;
map $http_x_forwarded_for $clientRealIp {
"" $remote_addr;
~^(?P<firstAddr>[0-9\.]+),?.*$ $firstAddr;
}
geo $whiteiplist {
default 1;
192.168.29.7 0;
192.168.32.230 0;
113.91.190.11 0;
121.34.53.218 0;
}
map $whiteiplist $limit {
# 1 $binary_remote_addr;
1 $clientRealIp;
0 "";
}
limit_req_zone $limit zone=one:10m rate=6r/m;
limit_conn_zone $limit zone=conn_zone:10m;
# limit_req_status 503;
# limit_req_zone $limit zone=one:10m rate=6r/m;
# limit_req_conn
proxy_cache_path /data/proxy_cache_path levels=1:2 keys_zone=cache_zone:100m max_size=1g inactive=60m use_temp_path=off;
proxy_temp_path /data/proxy_temp_path;
# limit_req zone=one burst=3 nodelay;
server_tokens off;
proxy_connect_timeout 100;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_headers_hash_max_size 51200;
proxy_headers_hash_bucket_size 6400;
client_max_body_size 30m;
client_body_buffer_size 512k;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_hide_header Vary;
proxy_set_header Accept-Encoding "";
proxy_set_header Referer $http_referer;
proxy_set_header Cookie $http_cookie;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-IP $http_x_real_ip;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Real-IP $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $http_x_forwared_for;
include /usr/local/nginx/conf.d/*.conf;
}
wordpress.conf配置文件
server {
listen 443 ssl;
server_name.jcici.com;
root /wordpress;
index index.php index.html index.htm;
ssl on;
ssl_certificate /usr/local/nginx/ssl/cert.pem;
ssl_certificate_key /usr/local/nginx/ssl/cert.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
access_log /usr/local/nginx/log/cc.access.log;
error_log /usr/local/nginx/log/cc.error.log;
location ~ \.php$ {
root /wordpress;
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
fastcgi_pass php:9000; 这里的php又link来指定生成nginx镜像
docker build -t cc/wordpress:nginx .
5、运行镜像
启动db docker run -d -p 20002:22 --name db cc/wordpress:db 可以用ssh 20002来管理db这个容器
docker run -d --name=php -v /webapp:/wordpress cc/wordpress:php
docker run -d -p 443:443 --name nginx --link=php:php -v /webapp:/wordpress cc/wordpress:nginx
本文标签:
很赞哦! ()
相关教程
- Mac电脑桌面安装WordPress
- 基于Centos7详细安装wordpress的方法
- 安装wordpress搭建站点的方法示例
- Win2003 + IIS 6安装WordPress MU配置方法
- Centos7怎么安装WordPress
- 怎么安装wordpress,wordpress安装步骤教程
- CentOS 6.4 php环境配置安装wordpress的方法
- 在linux下安装wordpress的方法示例
- nginx环境下安装wordpress的方法
- CentOS 7安装WordPress的方法示例
- kali攻击wordpress,trunkey+linux安装wordpress的方法
- linux系统安装WordPress的方法
图文教程
wordpress更换域名的步骤教程
不管是个人网站还是企业网站,一般我们都不建议更换网站域名,因为这不但会影响网站在搜索引擎结果中的排名,减少网站的访问量
WordPress文章发布按钮添加确认对话框的方法
怎么为WordPress文章发布按钮添加确认对话框?你有没有不小心误点发布按钮而发表一篇文章吗? 如果你使用了社交类插件,误发布的同时会共享到社交网络上
wordpress主题怎么保存
wordpress主题怎么保存,首先登陆wordpress的后台,然后找到wordpress后台的外观——主题
wordpress下载的主题安装方法
首先进入我们自己网站的wordpress后台,选择主题–添加新主题会看到添加主题的右边有一个上传主题按钮,点击它就能上传主题文件压缩包选择下载好的主题文件
相关源码
-
(自适应)光伏测试仪器电站运维设备网站源码免费下载本模板为光伏检测设备与电站运维服务企业设计,采用PbootCMS内核开发,具备完整的设备展示、技术文档管理及客户服务功能模块。通过自适应结构与SEO优化框架,有效提升企业在移动端和搜索引擎中的专业形象。查看源码 -
(PC+WAP)pbootcms模板黑色门窗定制五金建材网站下载为门窗定制与五金建材企业设计的网站解决方案,采用PbootCMS开发,兼具专业展示与营销功能。黑色系设计突显工业质感,响应式布局确保在手机、平板等设备上的浏览体验。通过简单的内容替换,也可适用于建材贸易、家具定制等相关行业。查看源码 -
(自适应)蓝色厨卫厨房水龙头阀门水槽设备源码下载基于PbootCMS内核开发,深度适配厨卫设备行业特性。通过精准的产品展示模块与水效标识专区设计,有效呈现五金件工艺细节。响应式布局确保从手机到平板都能展示金属质感与水流动态效果。查看源码 -
(自适应)餐饮小吃火锅加盟pbootcms模板源码下载本模板基于PbootCMS系统开发,为火锅餐饮、小吃加盟等餐饮企业打造。采用响应式设计,适配各类移动设备,帮助餐饮企业展示特色菜品、加盟政策和服务优势。查看源码 -
(自适应)响应式文章博客互联网新闻pbootcms模板下载本模板基于PbootCMS开发,专为科技新闻、互联网资讯和文章博客类网站设计。采用响应式布局技术,确保在电脑、平板和手机上都能获得最佳浏览体验。适用于科技媒体、行业博客查看源码 -
(PC+WAP)生活资讯百科新闻门户类pbootcms网站模板为生活资讯、百科门户类企业打造的高性能网站模板,基于PbootCMS开源内核开发,采用HTML5响应式架构,PC与手机端实时数据同步,覆盖全终端用户浏览场景。查看源码
| 分享笔记 (共有 篇笔记) |

