.net做网站的优缺点,百度排名软件,物联网技术有哪些,公众平台注册目录
一、项目的介绍
1、项目需求
2、服务器环境
3、任务需求
二、Linux系统基础镜像
三、部署Nginx
1、建立工作目录
2、编写Dockerfile
3、准备nginx.conf配置文件
4、设置自定义网段和创建镜像和容器
5、启动镜像容器
6、验证nginx
三、Mysql
1、建立工作目录…目录
一、项目的介绍
1、项目需求
2、服务器环境
3、任务需求
二、Linux系统基础镜像
三、部署Nginx
1、建立工作目录
2、编写Dockerfile
3、准备nginx.conf配置文件
4、设置自定义网段和创建镜像和容器
5、启动镜像容器
6、验证nginx
三、Mysql
1、建立工作目录
2、编写Dockerfile
3、准备my.cnf文件
4、生成镜像
5、启动镜像容器
6、验证mysql
四、PHP
1、建立工作目录
2、编写Dockerfile脚本
3、准备php.ini、php-fpm.conf、www.conf配置文件
3.1php.ini
3.2php-fpm.conf
3.3www.conf
3.4生产镜像
4、启动镜像容器
5、验证php
6、启动wordpress服务
1、mysql授权
2、浏览器访问测试
五、故障处理
1、在/opt/nginx/html下创建wp-config.php文件将下面内容粘贴进去然后保存退出刷新网页就解决了。
2、注意粘贴内容时要在最后面加上 ? ,复制的内容里面最后没有?
3、然后正常登录就行了。 一、项目的介绍
1、项目需求
在生产环境中使用docker在一台主机上创建LNMP服务并且运行Wordpress网站平台。然后对此服务进行相关的性能调优和管理工作。
2、服务器环境
容器操作系统IP地址主要软件nginxCentOS 7172.111.0.10Docker-NginxmysqlCentOS 7172.111.0.20Docker-MysqlphpCentOS 7172.111.0.30Docker-php
3、任务需求
①使用Docker构建LNMP环境并运行Wordpress网站平台。
②限制Nginx容器最多使用500Mb的内存和1G的Swap。
③限制Mysql容器的写/dev/sda的速率为10Mb/s。
④将所有容器进行快照然后将Docker镜像打包成tar包备份到本地。
二、Linux系统基础镜像
[rootdocker ~]# systemctl disable --now firewalld
[rootdocker ~]# setenforce 0
setenforce: SELinux is disabled
[rootdocker ~]# docker pull centos
#从公有仓库中下载 centos7 作为系统基础镜像
[rootdocker ~]# 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.gz 2、编写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.111.0.30:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;include fastcgi_params;}}
} 4、设置自定义网段和创建镜像和容器
docker network create --subnet172.111.0.0/16 --opt com.docker.network.bridge.namedocker1 mynetworkdocker network ls
查看
[rootdocker nginx]# docker build -t nginx:lnmp .
[rootdocker nginx]# docker images 5、启动镜像容器
[rootbenet23 nginx]# docker run -d --name nginx -p 80:80 -m 500m --memory-swap 1g --net mynetwork --ip 172.111.0.10 nginx:lnmp
24cbedd7982b1cf658cff4efd1ea75a5bfe252b6d01b2a222ed4cde63215479d
[rootbenet23 nginx]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
24cbedd7982b nginx:lnmp /usr/local/nginx/sb… 4 seconds ago Up 3 seconds 0.0.0.0:80-80/tcp, :::80-80/tcp nginx······[rootbenet23 nginx]# docker inspect nginxNetworks: {mynetwork: {IPAMConfig: {IPv4Address: 172.111.0.10 6、验证nginx
[rootdocker nginx]# curl http://192.168.170.111: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、建立工作目录
[rootbenet23 nginx]# mkdir /opt/mysql
[rootbenet23 nginx]# cd /opt/mysql/
[rootbenet23 mysql]# rz -E
rz waiting to receive.
#传入mysql安装包mysql-boost-5.7.20.tar.gz 2、编写Dockerfile
2. [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 installADD my.cnf /etc/my.cnfEXPOSE 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_QUOTES 4、生成镜像
[rootdocker mysql]# docker build -t mysql:lnmp .
[rootdocker mysql]# docker images 5、启动镜像容器
[rootbenet23 mysql]# docker run --namemysql -d --privileged --device-write-bps /dev/sda:10M -v /usr/local/mysql --net mynetwork --ip 172.111.0.20 mysql:lnmp
e75631cda20bf2b2da5537699b006e446abba355f39ef39b2c8d2d98582f5bea
[rootbenet23 mysql]# docker ps -a 6、验证mysql
[rootbenet23 mysql]# docker exec -it mysql bash
[roote75631cda20b bin]# systemctl status mysqld
6. ● mysqld.service - MySQL ServerLoaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)Active: activating (start) since Sun 2023-01-01 04:35:03 UTC; 1min 49s 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: 50 ExecStartPre/usr/local/mysql/bin/mysqld_pre_systemd (codeexited, status0/SUCCESS)CGroup: /docker/e75631cda20bf2b2da5537699b006e446abba355f39ef39b2c8d2d98582f5bea/system.slice/mysqld.service└─73 /usr/local/mysql/bin/mysqld --daemonize --pid-file/usr/local/mysql/mysqld.pid 四、PHP
1、建立工作目录
[rootbenet23 mysql]# mkdir ../php
[rootbenet23 mysql]# cd ../php/
[rootbenet23 php]# rz -E
rz waiting to receive. 2、编写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 -F 3、准备php.ini、php-fpm.conf、www.conf配置文件
3.1php.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 ^$ 3.2php-fpm.conf
该配置文件位于 /usr/local/php/etc/php-fpm.conf.default
[rootdocker php]# vim php-fpm.conf #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/*.conf 3.3www.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.111.0.30:9000
[rootdocker php]# egrep -v ^; www.conf | egrep -v ^$ 3.4生产镜像
[rootbenet23 php]# docker build -t php:lnmp .
[rootbenet23 php]# docker images 4、启动镜像容器
[rootbenet23 php]# docker run -itd --name php --net mynetwork --ip 172.111.0.30 -p 9000:9000 --volumes-from nginx --volumes-from mysql php:lnmp
03e251af5164d3e7392af541f0f2964badbd653db15e7be5d38caabb210c367d
[rootbenet23 php]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
03e251af5164 php:lnmp /bin/sh -c /usr/lo… 7 seconds ago Up 5 seconds 0.0.0.0:9000-9000/tcp, :::9000-9000/tcp php
e75631cda20b mysql:lnmp /usr/sbin/init 10 hours ago Up 10 hours 3306/tcp mysql
24cbedd7982b nginx:lnmp /usr/local/nginx/sb… 7 days ago Up 7 days 0.0.0.0:80-80/tcp, :::80-80/tcp nginx 5、验证php
[rootbenet23 php]# docker exec -it php bash
[root03e251af5164 php-7.1.10]# ps -aux 6、启动wordpress服务
1、mysql授权
docker exec -it mysql /bin/bash
[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.170.111/wordpress/index.php 五、故障处理
在登录过程中可能会出现以下问题
安装WordPress时遇到的问题抱歉我不能写入wp-config.php文件。您可以手工创建wp-config.php文件并将以下文字粘贴于其中。 1、在/opt/nginx/html下创建wp-config.php文件将下面内容粘贴进去然后保存退出刷新网页就解决了。
2、注意粘贴内容时要在最后面加上 ? ,复制的内容里面最后没有?
3、然后正常登录就行了。 文章转载自: http://www.morning.hyhzt.cn.gov.cn.hyhzt.cn http://www.morning.rbsxf.cn.gov.cn.rbsxf.cn http://www.morning.nzqmw.cn.gov.cn.nzqmw.cn http://www.morning.mm27.cn.gov.cn.mm27.cn http://www.morning.wwkdh.cn.gov.cn.wwkdh.cn http://www.morning.bnygf.cn.gov.cn.bnygf.cn http://www.morning.jrksk.cn.gov.cn.jrksk.cn http://www.morning.zbkwj.cn.gov.cn.zbkwj.cn http://www.morning.kncrc.cn.gov.cn.kncrc.cn http://www.morning.mfsjn.cn.gov.cn.mfsjn.cn http://www.morning.tdcql.cn.gov.cn.tdcql.cn http://www.morning.mjytr.cn.gov.cn.mjytr.cn http://www.morning.pmsl.cn.gov.cn.pmsl.cn http://www.morning.jrsgs.cn.gov.cn.jrsgs.cn http://www.morning.wjqbr.cn.gov.cn.wjqbr.cn http://www.morning.ldnrf.cn.gov.cn.ldnrf.cn http://www.morning.xnhnl.cn.gov.cn.xnhnl.cn http://www.morning.mwlxk.cn.gov.cn.mwlxk.cn http://www.morning.skrww.cn.gov.cn.skrww.cn http://www.morning.txqsm.cn.gov.cn.txqsm.cn http://www.morning.brrxz.cn.gov.cn.brrxz.cn http://www.morning.mqffm.cn.gov.cn.mqffm.cn http://www.morning.bcjbm.cn.gov.cn.bcjbm.cn http://www.morning.gjlml.cn.gov.cn.gjlml.cn http://www.morning.dqpd.cn.gov.cn.dqpd.cn http://www.morning.blxor.com.gov.cn.blxor.com http://www.morning.xhgcr.cn.gov.cn.xhgcr.cn http://www.morning.ljjmr.cn.gov.cn.ljjmr.cn http://www.morning.flchj.cn.gov.cn.flchj.cn http://www.morning.ysfj.cn.gov.cn.ysfj.cn http://www.morning.lchtb.cn.gov.cn.lchtb.cn http://www.morning.bbgn.cn.gov.cn.bbgn.cn http://www.morning.qbzdj.cn.gov.cn.qbzdj.cn http://www.morning.kksjr.cn.gov.cn.kksjr.cn http://www.morning.bbgr.cn.gov.cn.bbgr.cn http://www.morning.cbpkr.cn.gov.cn.cbpkr.cn http://www.morning.rmltt.cn.gov.cn.rmltt.cn http://www.morning.wfysn.cn.gov.cn.wfysn.cn http://www.morning.tpnx.cn.gov.cn.tpnx.cn http://www.morning.rhpy.cn.gov.cn.rhpy.cn http://www.morning.ywgrr.cn.gov.cn.ywgrr.cn http://www.morning.rtpw.cn.gov.cn.rtpw.cn http://www.morning.wwxg.cn.gov.cn.wwxg.cn http://www.morning.lkjzz.cn.gov.cn.lkjzz.cn http://www.morning.jbfjp.cn.gov.cn.jbfjp.cn http://www.morning.yrfxb.cn.gov.cn.yrfxb.cn http://www.morning.yfnhg.cn.gov.cn.yfnhg.cn http://www.morning.gypcr.cn.gov.cn.gypcr.cn http://www.morning.bchgl.cn.gov.cn.bchgl.cn http://www.morning.mspqw.cn.gov.cn.mspqw.cn http://www.morning.dtnzk.cn.gov.cn.dtnzk.cn http://www.morning.wdlg.cn.gov.cn.wdlg.cn http://www.morning.spsqr.cn.gov.cn.spsqr.cn http://www.morning.bpmnx.cn.gov.cn.bpmnx.cn http://www.morning.nzcgj.cn.gov.cn.nzcgj.cn http://www.morning.3dcb8231.cn.gov.cn.3dcb8231.cn http://www.morning.zfcfx.cn.gov.cn.zfcfx.cn http://www.morning.ryztl.cn.gov.cn.ryztl.cn http://www.morning.lynmt.cn.gov.cn.lynmt.cn http://www.morning.rrwgh.cn.gov.cn.rrwgh.cn http://www.morning.tgfsr.cn.gov.cn.tgfsr.cn http://www.morning.wqtzs.cn.gov.cn.wqtzs.cn http://www.morning.kzhgy.cn.gov.cn.kzhgy.cn http://www.morning.rrgm.cn.gov.cn.rrgm.cn http://www.morning.bnqcm.cn.gov.cn.bnqcm.cn http://www.morning.mplld.cn.gov.cn.mplld.cn http://www.morning.fqcdh.cn.gov.cn.fqcdh.cn http://www.morning.tqsmc.cn.gov.cn.tqsmc.cn http://www.morning.xqltq.cn.gov.cn.xqltq.cn http://www.morning.rhqn.cn.gov.cn.rhqn.cn http://www.morning.xrlwr.cn.gov.cn.xrlwr.cn http://www.morning.fxzw.cn.gov.cn.fxzw.cn http://www.morning.lqjlg.cn.gov.cn.lqjlg.cn http://www.morning.qsfys.cn.gov.cn.qsfys.cn http://www.morning.kkjlz.cn.gov.cn.kkjlz.cn http://www.morning.ryqsq.cn.gov.cn.ryqsq.cn http://www.morning.rkqkb.cn.gov.cn.rkqkb.cn http://www.morning.qpqb.cn.gov.cn.qpqb.cn http://www.morning.wwnb.cn.gov.cn.wwnb.cn http://www.morning.shyqcgw.cn.gov.cn.shyqcgw.cn