当前位置: 首页 > news >正文

网站编程学网站seo重庆

网站编程学,网站seo重庆,jsp网站开发小程序,酒店 wordpressDockerfile搭建LNMP运行Wordpress平台 一、项目1.1 项目环境1.2 服务器环境1.3 任务需求 二、Linux 系统基础镜像三、Nginx1、建立工作目录2、编写 Dockerfile 脚本3、准备 nginx.conf 配置文件4、生成镜像5、创建自定义网络6、启动镜像容器7、验证 nginx 四、Mysql1、建立工作… Dockerfile搭建LNMP运行Wordpress平台 一、项目1.1 项目环境1.2 服务器环境1.3 任务需求 二、Linux 系统基础镜像三、Nginx1、建立工作目录2、编写 Dockerfile 脚本3、准备 nginx.conf 配置文件4、生成镜像5、创建自定义网络6、启动镜像容器7、验证 nginx 四、Mysql1、建立工作目录2、编写 Dockerfile3、准备 my.cnf 文件4、生成镜像5、启动镜像容器6、验证 mysql 五、Php1、建立工作目录2、编写 Dockerfile 脚本3、准备 php.ini、php-fpm.conf、www.conf 配置文件3.1 php.ini3.2 php-fpm.conf3.3 www.conf 4、生成镜像5、启动镜像容器6、验证 php 六、启动 wordpress 服务1、mysql 授权2、浏览器访问测试 一、项目 1.1 项目环境 公司在实际的生产环境中需要使用 Docker 技术在一台主机上创建 LNMP 服务并运行 Wordpress 网站平台。然后对此服务进行相关的性能调优和管理工作。 所有安装包下载 wget http://101.34.22.188/lnmp_wordpress/mysql-boost-5.7.20.tar.gz wget http://101.34.22.188/lnmp_wordpress/nginx-1.12.0.tar.gz wget http://101.34.22.188/lnmp_wordpress/php-7.1.10.tar.bz2 wget http://101.34.22.188/lnmp_wordpress/wordpress-4.9.4-zh_CN.tar.gz或者 wget -r -np http://101.34.22.188/lnmp_wordpress/1.2 服务器环境 容器操作系统IP地址主要软件nginxCentOS 7172.20.0.10Docker-NginxmysqlCentOS 7172.20.0.20Docker-MysqlphpCentOS 7172.20.0.30Docker-php 1.3 任务需求 使用 Docker 构建 LNMP 环境并运行 Wordpress 网站平台 限制 Nginx 容器最多使用 500MB 的内存和 1G 的 Swap 限制 Mysql 容器写 /dev/sda 的速率为 10 MB/s 将所有容器进行快照然后将 Docker 镜像打包成 tar 包备份到本地 二、Linux 系统基础镜像 systemctl disable --now firewalld setenforce 0docker pull centos:7 #从公有仓库中下载 centos7 作为系统基础镜像 docker images三、Nginx 1、建立工作目录 [rootdocker ~]# mkdir /opt/nginx [rootdocker ~]# cd /opt/nginx [rootdocker nginx]# rz -E rz waiting to receive. #上传 nginx 安装包 nginx-1.12.0.tar.gz [rootdocker nginx]# rz -E rz waiting to receive. #上传 wordpress 服务包 wordpress-4.9.4-zh_CN.tar.gz2、编写 Dockerfile 脚本 [rootdocker nginx]# vim DockerfileFROM centos:7 MAINTAINER this is nginx image lnmp RUN yum -y install pcre-devel zlib-devel gcc gcc-c make;useradd -M -s /sbin/nologin nginx ADD nginx-1.12.0.tar.gz /usr/local/src/ WORKDIR /usr/local/src/nginx-1.12.0 RUN ./configure \ --prefix/usr/local/nginx \ --usernginx \ --groupnginx \ --with-http_stub_status_module;make -j 4 make install ENV PATH /usr/local/nginx/sbin:$PATH ADD nginx.conf /usr/local/nginx/conf/ ADD wordpress-4.9.4-zh_CN.tar.gz /usr/local/nginx/html RUN chmod 777 -R /usr/local/nginx/html/ EXPOSE 80 VOLUME [ /usr/local/nginx/html/ ] CMD [ /usr/local/nginx/sbin/nginx,-g,daemon off; ]3、准备 nginx.conf 配置文件 [rootdocker nginx]# ls Dockerfile nginx-1.12.0.tar.gz nginx.conf wordpress-4.9.4-zh_CN.tar.gz [rootdocker nginx]# egrep -v ^(.)*#(.)*$ nginx.conf | grep -v ^$ worker_processes 1; events {worker_connections 1024; } http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;server {listen 80;server_name localhost;charset utf-8;location / {root html;index index.html index.php;}error_page 500 502 503 504 /50x.html;location /50x.html {root html;}location ~ \.php$ {root html;fastcgi_pass 172.20.0.30:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;include fastcgi_params;}} }4、生成镜像 [rootdocker nginx]# docker build -t nginx:lnmp . [rootdocker nginx]#docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx lnmp 5a0e0043669b 35 seconds ago 598MB centos 7 eeb6ee3f44bd 23 months ago 204MB5、创建自定义网络 [rootdocker nginx]# docker network create --subnet172.20.0.0/16 --opt com.docker.network.bridge.namedocker1 mynetwork 790d9ac4da077b7b5d37738f500554f145190363eb9dee49a75330c344941393 [rootdocker nginx]# docker network ls NETWORK ID NAME DRIVER SCOPE 5e8ef229859a bridge bridge local ef6adc314f24 host host local de756c384380 mynetwork bridge local d06f318f929d none null local [rootdocker nginx]# ifconfig docker1 docker1: flags4099UP,BROADCAST,MULTICAST mtu 1500inet 172.20.0.1 netmask 255.255.0.0 broadcast 172.20.255.255ether 02:42:03:a1:95:19 txqueuelen 0 (Ethernet)RX packets 0 bytes 0 (0.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 0 bytes 0 (0.0 B)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 6、启动镜像容器 [rootdocker nginx]# docker run -d --name nginx -p 80:80 -m 500m --memory-swap 1g --net mynetwork --ip 172.20.0.10 nginx:lnmp 41442cbff5029e002412a3df6d7b0af20ca1558c15dee36f12777008cb9308c5 [rootdocker nginx]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1b5245030e46 nginx:lnmp /usr/local/nginx/sb… 16 seconds ago Up 15 seconds 0.0.0.0:80-80/tcp, :::80-80/tcp nginx [rootdocker nginx]# docker inspect nginx7、验证 nginx [rootdocker nginx]# curl http://192.168.174.15:80 !DOCTYPE html html head titleWelcome to nginx!/title stylebody {width: 35em;margin: 0 auto;font-family: Tahoma, Verdana, Arial, sans-serif;} /style /head body h1Welcome to nginx!/h1 pIf you see this page, the nginx web server is successfully installed and working. Further configuration is required./ppFor online documentation and support please refer to a hrefhttp://nginx.org/nginx.org/a.br/ Commercial support is available at a hrefhttp://nginx.com/nginx.com/a./ppemThank you for using nginx./em/p /body /html 四、Mysql 1、建立工作目录 [rootdocker nginx]# mkdir /opt/mysql [rootdocker nginx]# cd /opt/mysql/ [rootdocker mysql]# rz -E rz waiting to receive. #传入mysql安装包mysql-boost-5.7.20.tar.gz2、编写 Dockerfile [rootdocker mysql]# vim Dockerfile FROM centos:7 MAINTAINER this is mysql image lnmp RUN yum -y install ncurses ncurses-devel bison cmake pcre-devel zlib-devel gcc gcc-c make;useradd -M -s /sbin/nologin mysql ADD mysql-boost-5.7.20.tar.gz /usr/local/src/ WORKDIR /usr/local/src/mysql-5.7.20/ RUN cmake \ -DCMAKE_INSTALL_PREFIX/usr/local/mysql \ -DMYSQL_UNIX_ADDR/usr/local/mysql/mysql.sock \ -DSYSCONFDIR/etc \ -DSYSTEMD_PID_DIR/usr/local/mysql \ -DDEFAULT_CHARSETutf8 \ -DDEFAULT_COLLATIONutf8_general_ci \ -DWITH_EXTRA_CHARSETSall \ -DWITH_INNOBASE_STORAGE_ENGINE1 \ -DWITH_ARCHIVE_STORAGE_ENGINE1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE1 \ -DMYSQL_DATADIR/usr/local/mysql/data \ -DWITH_BOOSTboost \ -DWITH_SYSTEMD1;make -j4;make install ADD my.cnf /etc/my.cnf EXPOSE 3306 RUN chown -R mysql:mysql /usr/local/mysql/;chown mysql:mysql /etc/my.cnf WORKDIR /usr/local/mysql/bin/ RUN ./mysqld \ --initialize-insecure \ --usermysql \ --basedir/usr/local/mysql \ --datadir/usr/local/mysql/data;cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/;systemctl enable mysqld ENV PATH/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH VOLUME [ /usr/local/mysql ] CMD [/usr/sbin/init]3、准备 my.cnf 文件 [rootdocker mysql]# vim my.cnf[client] port 3306 socket/usr/local/mysql/mysql.sock[mysqld] user mysql basedir/usr/local/mysql datadir/usr/local/mysql/data port 3306 character-set-serverutf8 pid-file /usr/local/mysql/mysqld.pid socket/usr/local/mysql/mysql.sock bind-address 0.0.0.0 skip-name-resolve max_connections2048 default-storage-engineINNODB max_allowed_packet16M server-id 1sql_modeNO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES4、生成镜像 [rootdocker mysql]# docker build -t mysql:lnmp . [rootdocker mysql]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx lnmp d4fe3c888a2d 3 minutes ago 598MB mysql lnmp 7f0f3a49d67e 14 minutes ago 10.1GB centos 7 eeb6ee3f44bd 23 months ago 204MB5、启动镜像容器 [rootdocker mysql]#docker run --namemysql -d --privileged --device-write-bps /dev/sda:10M -v /usr/local/mysql --net mynetwork --ip 172.20.0.20 mysql:lnmp a2caf0708e3993407b81855b16826d7ffd59063b251a189c803a0a51afff5553 [rootdocker mysql]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a2caf0708e39 mysql:lnmp /usr/sbin/init 56 seconds ago Up 46 seconds 3306/tcp mysql 1b5245030e46 5a0e0043669b /usr/local/nginx/sb… 51 minutes ago Exited (0) 7 minutes ago nginx6、验证 mysql [rootdocker mysql]# docker exec -it mysql bash [root31ca97f27c93 bin]# systemctl status mysqld ● mysqld.service - MySQL ServerLoaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)Active: activating (start) since Sun 2023-08-20 12:34:12 UTC; 57s agoDocs: man:mysqld(8)http://dev.mysql.com/doc/refman/en/using-systemd.htmlProcess: 70 ExecStart/usr/local/mysql/bin/mysqld --daemonize --pid-file/usr/local/mysql/mysqld.pid $MYSQLD_OPTS (codeexited, status0/SUCCESS)Process: 49 ExecStartPre/usr/local/mysql/bin/mysqld_pre_systemd (codeexited, status0/SUCCESS)CGroup: /docker/31ca97f27c93b75d223f478d4fc4fa8617fa486caf18036a03253cd5d133edbb/system.slice/mysqld.service└─72 /usr/local/mysql/bin/mysqld --daemonize --pid-file/usr/local/mysql/mysqld.pid五、Php 1、建立工作目录 [rootdocker mysql]# mkdir ../php [rootdocker mysql]# cd ../php/ [rootdocker php]# rz -E rz waiting to receive. #传入php安装包php-7.1.10.tar.bz22、编写 Dockerfile 脚本 [rootdocker php]# vim Dockerfile FROM centos:7 MAINTAINER this is php image lnmp RUN yum install -y gd \ libjpeg libjpeg-devel \ libpng libpng-devel \ freetype freetype-devel \ libxml2 libxml2-devel \ zlib zlib-devel \ curl curl-devel \ openssl openssl-devel \ gcc gcc-c make pcre-devel;useradd -M -s /sbin/nologin nginx ADD php-7.1.10.tar.bz2 /usr/local/src/ WORKDIR /usr/local/src/php-7.1.10 RUN ./configure \ --prefix/usr/local/php \ --with-mysql-sock/usr/local/mysql/mysql.sock \ --with-mysqli \ --with-zlib \ --with-curl \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --with-openssl \ --enable-fpm \ --enable-mbstring \ --enable-xml \ --enable-session \ --enable-ftp \ --enable-pdo \ --enable-tokenizer \ --enable-zip ; make -j 4 ; make install ENV PATH /usr/local/php/bin:/usr/local/php/sbin:$PATH ADD php.ini /usr/local/php/lib/ ADD php-fpm.conf /usr/local/php/etc/ ADD www.conf /usr/local/php/etc/php-fpm.d/ EXPOSE 9000 CMD /usr/local/php/sbin/php-fpm -F3、准备 php.ini、php-fpm.conf、www.conf 配置文件 3.1 php.ini 该配置文件模板位于安装目录的 php-7.1.10/php.ini-development 位置 [rootdocker php]# vim php.ini #939行,取消注释修改 date.timezone Asia/Shanghai #1170行,修改 mysqli.default_socket /usr/local/mysql/mysql.sock[rootdocker php]# egrep -v ^; php.ini | egrep -v ^$ [PHP] engine On short_open_tag Off precision 14 output_buffering 4096 zlib.output_compression Off implicit_flush Off unserialize_callback_func serialize_precision -1 disable_functions disable_classes zend.enable_gc On expose_php On max_execution_time 30 max_input_time 60 memory_limit 128M error_reporting E_ALL display_errors On display_startup_errors On log_errors On log_errors_max_len 1024 ignore_repeated_errors Off ignore_repeated_source Off report_memleaks On track_errors On html_errors On variables_order GPCS request_order GP register_argc_argv Off auto_globals_jit On post_max_size 8M auto_prepend_file auto_append_file default_mimetype text/html default_charset UTF-8 doc_root user_dir enable_dl Off file_uploads On upload_max_filesize 2M max_file_uploads 20 allow_url_fopen On allow_url_include Off default_socket_timeout 60 [CLI Server] cli_server.color On [Date] date.timezone Asia/Shanghai [filter] [iconv] [intl] [sqlite3] [Pcre] [Pdo] [Pdo_mysql] pdo_mysql.cache_size 2000 pdo_mysql.default_socket [Phar] [mail function] SMTP localhost smtp_port 25 mail.add_x_header On [SQL] sql.safe_mode Off [ODBC] odbc.allow_persistent On odbc.check_persistent On odbc.max_persistent -1 odbc.max_links -1 odbc.defaultlrl 4096 odbc.defaultbinmode 1 [Interbase] ibase.allow_persistent 1 ibase.max_persistent -1 ibase.max_links -1 ibase.timestampformat %Y-%m-%d %H:%M:%S ibase.dateformat %Y-%m-%d ibase.timeformat %H:%M:%S [MySQLi] mysqli.max_persistent -1 mysqli.allow_persistent On mysqli.max_links -1 mysqli.cache_size 2000 mysqli.default_port 3306 mysqli.default_socket /usr/local/mysql/mysql.sock mysqli.default_host mysqli.default_user mysqli.default_pw mysqli.reconnect Off [mysqlnd] mysqlnd.collect_statistics On mysqlnd.collect_memory_statistics On [OCI8] [PostgreSQL] pgsql.allow_persistent On pgsql.auto_reset_persistent Off pgsql.max_persistent -1 pgsql.max_links -1 pgsql.ignore_notice 0 pgsql.log_notice 0 [bcmath] bcmath.scale 0 [browscap] [Session] session.save_handler files session.use_strict_mode 0 session.use_cookies 1 session.use_only_cookies 1 session.name PHPSESSID session.auto_start 0 session.cookie_lifetime 0 session.cookie_path / session.cookie_domain session.cookie_httponly session.serialize_handler php session.gc_probability 1 session.gc_divisor 1000 session.gc_maxlifetime 1440 session.referer_check session.cache_limiter nocache session.cache_expire 180 session.use_trans_sid 0 session.sid_length 26 session.trans_sid_tags ahref,areahref,framesrc,form session.sid_bits_per_character 5 [Assertion] zend.assertions 1 [COM] [mbstring] [gd] [exif] [Tidy] tidy.clean_output Off [soap] soap.wsdl_cache_enabled1 soap.wsdl_cache_dir/tmp soap.wsdl_cache_ttl86400 soap.wsdl_cache_limit 5 [sysvshm] [ldap] ldap.max_links -1 [mcrypt] [dba] [opcache] [curl] [openssl]3.2 php-fpm.conf 该配置文件位于 /usr/local/php/etc/php-fpm.conf.default [rootdocker php]# vim php-fpm.conf.default#17行删除注释符号“;” pid run/php-fpm.pid[rootdocker php]# egrep -v ^; php-fpm.conf | egrep -v ^$ [global] pid run/php-fpm.pid include/usr/local/php/etc/php-fpm.d/*.conf3.3 www.conf 该配置文件位于 usr/local/php/etc/php-fpm.d/www.conf.default [rootdocker php]# vim www.conf #23、24行修改用户和组 user nginx group nginx #36行修改监听IP和端口为容器IP:9000端口 listen 172.20.0.30:9000[rootdocker php]# egrep -v ^; www.conf | egrep -v ^$ [www] user nginx group nginx listen 172.20.0.30:9000 pm dynamic pm.max_children 5 pm.start_servers 2 pm.min_spare_servers 1 pm.max_spare_servers 34、生成镜像 [rootdocker php]# docker build -t php:lnmp . [rootdocker php]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE php lnmp 10515f9b4707 About a minute ago 1.35GB mysql lnmp cd27f2be29d9 21 minutes ago 10.1GB nginx lnmp 29a24033b897 2 hours ago 598MB centos 7 eeb6ee3f44bd 23 months ago 204MB5、启动镜像容器 [rootdocker php]# docker run -itd --name php --net mynetwork --ip 172.20.0.30 -p 9000:9000 --volumes-from nginx --volumes-from mysql php:lnmp 3ae8287681c9b5db297a3ce92c8fb9dfacda9dbdb1d80cfe5930208f46a03037 [rootdocker php]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 31ca97f27c93 mysql:lnmp /usr/sbin/init 20 minutes ago Up 20 minutes 3306/tcp mysql 79f03202741d nginx:lnmp /usr/local/nginx/sb… About an hour ago Up About an hour 0.0.0.0:80-80/tcp, :::80-80/tcp nginx6、验证 php [rootdocker php]# docker exec -it php bash [root03e251af5164 php-7.1.10]# ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 113028 7516 pts/0 Ss 14:41 0:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf) nginx 7 0.0 0.0 113028 3768 pts/0 S 14:41 0:00 php-fpm: pool www nginx 8 0.0 0.0 113028 3768 pts/0 S 14:41 0:00 php-fpm: pool www root 9 0.1 0.0 11828 1876 pts/1 Ss 14:57 0:00 bash root 23 0.0 0.0 51732 1728 pts/1 R 14:57 0:00 ps -aux六、启动 wordpress 服务 1、mysql 授权 进入 mysql 容器 [roote75631cda20b bin]# mysql -u root -p Enter password: #初始密码为空 mysql create database wordpress; Query OK, 1 row affected (0.00 sec)mysql grant all privileges on wordpress.* to wordpress% identified by 123456; Query OK, 0 rows affected, 1 warning (0.00 sec)mysql grant all privileges on *.* to root% identified by 123456; Query OK, 0 rows affected, 1 warning (0.00 sec)mysql flush privileges; Query OK, 0 rows affected (0.00 sec)2、浏览器访问测试 访问 http://192.168.174.15/wordpress/index.php
http://www.hkea.cn/news/14341300/

相关文章:

  • 城乡建设管理局网站徐州网页设计
  • 网站设计与开发网站负责人姓名
  • 电子商务网站建设的需求html5设计网页代码
  • 用织梦做的学校网站赣州网页设计师培训
  • 棋牌 彩票网站建设wordpress支付插件安装
  • 网站资讯建设wordpress中联系表
  • 百度蜘蛛开发网站17岁在线观看免费高清完整版
  • mvc网站开发 案例视频wordpress 弹窗
  • 企业网站建设代理加盟东莞seo网络优化
  • 网站有什么功能中小企业网站建设框架
  • 电子商务网站建设运行环境网站网页?问?
  • 建立导购网站三亚凤凰镇网站建设兼职招聘网
  • 厦门制作企业网站成crm软件
  • 新乡专业做网站多少钱网站开发费属于无形资产
  • 网页设计与网站建设报告书政务网站集约化建设
  • 黄陌陌网站怎么做软件工程师怎么学
  • 厦门住房建设局网站首页简单网页制作模板免费
  • 合肥商城网站建设地址企业信用信息年报公示
  • 如何查询网站的备案信息热门关键词查询
  • 何炅做的代言网站学校网站维护怎么做
  • 西宁网站建设官网wordpress网站后台要怎么登陆
  • 设计对网站的重要性dedecms可以做什么网站
  • 建设网站的体会北京出啥大事了今天
  • 建设淘宝联盟购物网站做网站深紫色搭配什么颜色
  • 网页设计怎么做网站进入微信公众号登录入口
  • 做网站什么前端框架方便郑州网站建设公司电话多少
  • 厦门seo传播网站开发 seo
  • 珠宝网站策划西安谁家做网站
  • 网站meta 优化建议自动引流推广app
  • 长春设计网站简单手工