做网站 怎么推广,上海市企业服务云十问十答,html改变字体大小代码,wordpress更新失败目录
一、基础环境准备
二、部署nginx#xff08;容器IP为172.18.0.10#xff09;
1、整个Dockerfile文件内容 2、配置nginx.conf文件 3、构建镜像
编辑 三、部署mysql
1、整个Docker文件内容
2、准备my.conf文件 3、生成镜像 4、启动镜像容器 5、验证mysql 四、PH…目录
一、基础环境准备
二、部署nginx容器IP为172.18.0.10
1、整个Dockerfile文件内容 2、配置nginx.conf文件 3、构建镜像
编辑 三、部署mysql
1、整个Docker文件内容
2、准备my.conf文件 3、生成镜像 4、启动镜像容器 5、验证mysql 四、PHP部署
1、整个Dockerfile文件内容
2、配置需要上传的文件 3、生成镜像 3、启动镜像容器 4、验证php 五、启动wordpress服务
1、登录到mysql容器中授权 2、网页访问http://192.168.40.20/wordpress/wp-admin/setup-config.php 一、基础环境准备
容器系统IP地址软件nginxcentos7.5172.18.0.10wordpress-6.0.2-zh_CN.tar.gz、nginx-1.12.2.tar.gzmysqlcentos7.5172.18.0.20mysql-boost-5.7.25.tar.gphpcentos7.5172.18.0.30php-7.1.24.tar.gz
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
#关闭防火墙和核心防护docker pull centos:7
#从docker Hub公共仓库下载基础镜像docker network create --subnet172.18.0.0/16 --opt com.docker.network.bridge.namedocker1 mynetwork
#设置自定义网络模式模式为bridge模式docker1的ip地址为172.18.0.1显示的网络名称mynetwork。docker network ls
#查看使用的网络模式ifconfig二、部署nginx容器IP为172.18.0.10
1、整个Dockerfile文件内容
mkdir /opt/nginx
cd /opt/nginx
#此目录上传nginx包vim Dockerfile
#编写dockerfile文件FROM centos:7
#指定基础镜像MAINTAINER ydq
#指定维护者信息RUN yum -y install pcre-devel zlib-devel gcc gcc-c make
#安装依赖包安装环境RUN useradd -M -s /sbin/nologin nginx
#创建nginx用户ADD nginx-1.12.2.tar.gz /opt
#将本地安装包上传到指定目录(自动解压)WORKDIR /opt/nginx-1.12.2
#进入到/opt/nginx-1.12.2目录中RUN ./configure \
--prefix/usr/local/nginx \
--usernginx \
--groupnginx \
--with-http_stub_status_module make make install
#开始编译安装,加上符号只有前面执行完成后面才会执行ENV PATH/usr/local/nginx/sbin:$PATH
#将nginx执行命令放入到环境变量中ADD nginx.conf /usr/local/nginx/conf/nginx.conf
#在宿主机写好配置文件然就将配置文件复制到容器中ADD wordpress-6.0.2-zh_CN.tar.gz /usr/local/nginx/html
#上传论坛的包RUN chmod 777 -R /usr/local/nginx/html
#给html文件所有权限EXPOSE 80
#开放80端口VOLUME [/usr/local/nginx/html/]
#挂载目录(相当于将/usr/local/nginx/html目录共享会在宿主机上自动生成共享目录主要目的是为了让容器之间共享这个文件)CMD [/usr/local/nginx/sbin/nginx,-g,daemon off;]
#执行启动nginx命令,并且关闭nginx的后台启动因为需要它占用前台让docker不关闭。2、配置nginx.conf文件
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$ { #当访问以.php结尾的URL时会连接到172.18.0.30的ip地址上root html;fastcgi_pass 172.18.0.30:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;include fastcgi_params;}}
}3、构建镜像
在构建镜像前确保一下文件压缩包都在 docker build -t nginx:lnmp .
#构建nginx镜像(别忘记最后的点)docker images
#查看镜像docker run -d --name nginx -p 80:80 -m 500m --memory-swap 1g --net mynetwork --ip 172.18.0.10 nginx:lnmp
#启动容器
----------------------------
-m 500: #表示该容器内存最大为500MB
--memory-swap: #表示内存swap总共1G那swap也是500MB
//相当于是限制了内存的使用量避免所占资源太多----------------------
docker ps -a
#查看容器curl 192.168.40.20 三、部署mysql
1、整个Docker文件内容 mkdir /opt/mysql
cd /opt/mysql
#上传mysql包到此目录下vim DockerfileFROM centos:7
#基础镜像MAINTAINER ydq
#维护人信息RUN yum -y install ncurses ncurses-devel bison cmake pcre-devel zlib-devel gcc gcc-c make
#安装环境RUN useradd -M -s /sbin/nologin mysql
#创建mysql用户ADD mysql-boost-5.7.25.tar.gz /opt
#将mysql安装包上传(自带boost)WORKDIR /opt/mysql-5.7.25
#切换到mysql解压后的目录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
#编译安装EXPOSE 3306
#开放端口RUN chown -R mysql:mysql /usr/local/mysql/;chown mysql:mysql /etc/my.cnf
#设置权限ENV PATH /usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
#设置环境变量WORKDIR /usr/local/mysql/bin
#切换目录RUN ./mysqld \
--initialize-insecure \
--usermysql \
--basedir/usr/local/mysql \
--datadir/usr/local/mysql/data
#初始化mysqlRUN cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
#复制mysql服务程序到启动文件中VOLUME [/usr/local/mysql]
#设置共享目录CMD [/usr/sbin/init]
#启动容器之后可以使用systemctl工具(并且占用前台保持容器不断)2、准备my.conf文件
vim /opt/my.cnf[client]
port 3306
default-character-setutf8
socket/usr/local/mysql/mysql.sock [mysql]
port 3306
default-character-setutf8
socket/usr/local/mysql/mysql.sock
auto-rehash[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 1
sql_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_QUOTES3、生成镜像
docker build -t mysql:lnmp .
#生成镜像docker images
#查看镜像4、启动镜像容器
docker run --name mysql -d --privileged --device-write-bps /dev/sda:10M -v /usr/local/mysql --net mynetwork --ip 172.18.0.20 mysql:lnmp
#生成容器
-----------------------------------------
--privileged: #让容器内拥有root权限
--device-write-bps: #限制写入到/dev/sda中每秒最大10M的速度。
-v /usr/local/mysql: #共享这个目录其它容器可以使用--volumes-from 指定读取本容器的共享目录。然后也会生成一样的目录。
--net mynetwork: #指定--net网络模式mynetwork为自定义网络模式。
--ip 172.18.0.20: #指定ip地址自定义网络模式也可以指定ip地址。
-----------------------------------------
docker ps -a
#查看容器5、验证mysql
docker exec -it mysql bash
#登录该容器systemctl status mysqld
#查看mysql状态四、PHP部署
1、整个Dockerfile文件内容
mkdir /opt/php
cd /opt/php
#将php包上传到该目录vim Dockerfile
FROM centos:7MAINTAINER ydq3RUN 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
#下载环境以及创建nginx用户。ADD php-7.1.24.tar.gz /opt
#上传php包到/opt目录下WORKDIR /opt/php-7.1.24
#进入到指定目录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
#启动一个进程占用前台。2、配置需要上传的文件
①配置php.ini文件
vim /opt/php/php.ini[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]②配置php-fpm.conf文件
vim /opt/php/php-fpm.conf[global]
pid run/php-fpm.pid
include/usr/local/php/etc/php-fpm.d/*.conf③配置www.conf文件
vim /opt/php/www.conf[www]
user nginx
group nginx
listen 172.18.0.30:9000
pm dynamic
pm.max_children 5
pm.start_servers 2
pm.min_spare_servers 1
pm.max_spare_servers 33、生成镜像
docker build -t php:lnmp .
#构建镜像docker images
#查看3、启动镜像容器
docker run -itd --name php --net mynetwork --ip 172.18.0.30 -p 9000:9000 --volumes-from nginx --volumes-from mysql php:lnmp
#启动容器
-----------------------------------------------
--volumes-from nginx: #表示读取nginx容器的共享信息
--volumes-from mysql: #表示读取mysql容器的共享信息
-----------------------------------------------docker ps -a
#查看容器4、验证php
docker exec -it php bash
#登录该容器ps -aux
#查看进程五、启动wordpress服务
1、登录到mysql容器中授权
docker exec -it mysql bash
#登录到mysql容器mysql
#登录到容器中create database wordpress;
#创建一个数据库grant all privileges on wordpress.* to wordpress% identified by abc123;grant all privileges on *.* to root% identified by abc123;flush privileges; 2、网页访问http://192.168.40.20/wordpress/wp-admin/setup-config.php