一,环境配置

     rancher 2.1.6

二,配置harbor私有仓库

  见上文

三,配置私有镜像

   01,总文件

   

   dockerfile 为主配置文件,html 为站点文件wordpress.,官网下载更加

 FROM centos:7.4.
MAINTAINER kingle
ENV PHP_VARSION 5.5.
ENV NGINX_VERSION 1.14.
ADD . /usr/local/share/
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-.repo && \
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-.repo
RUN yum install -y pcre pcre-devel openssl openssl-devel gcc make gcc-c++
RUN cd /usr/local/share/ && tar zxf nginx-1.14..tar.gz && \
useradd www -s /bin/nologin -M
WORKDIR /usr/local/share/nginx-1.14./
RUN ./configure --user=www --group=www \
--prefix=/application/nginx \
--with-http_stub_status_module --with-http_ssl_module && \
make -j && make install
RUN yum install vim net-tools zlib-devel openssl-devel openssl libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libxslt-devel libmcrypt-devel mcrypt mhash -y
RUN cd /usr/local/share/ && tar zxf libmcrypt-2.5..tar.gz && tar zxf mcrypt-2.6..tar.gz && tar zxf mhash-0.9.9.9.tar.gz
RUN cd /usr/local/share/libmcrypt-2.5. && \
./configure && make && make install && \
ln -s /usr/local/bin/libmcrypt_config /usr/bin/libmcrypt_config && \
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
RUN cd /usr/local/share/mhash-0.9.9.9 && \
./configure && make && make install
RUN cd /usr/local/share/mcrypt-2.6. && \
./configure && make && make install
RUN cd /usr/local/share/ && tar zxf libiconv-1.14.tar.gz && \
tar zxf php-5.5..tar.gz && \
cd /usr/local/share/libiconv-1.14 && \
sed -i -e '/gets is a security/d' srclib/stdio.in.h && \
./configure --prefix=/usr/local/libiconv && make -j && make install
RUN cd /usr/local/share/php-5.5. && ./configure --prefix=/application/php --with-fpm-user=www \
--with-fpm-group=www \
--with-iconv=/usr/local/libiconv \
--with-mysqli \
--with-pdo-mysql \
--with-openssl \
--with-gd \
--with-zlib \
--with-gettext \
--with-curl \
--with-png-dir \
--with-jpeg-dir \
--with-freetype-dir \
--with-xmlrpc \
--with-mhash \
--with-openssl \
--enable-fpm \
--enable-xml \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-ftp \
--enable-gd-native-ttf \
--enable-mysqlnd \
--enable-pcntl \
--enable-sockets \
--enable-zip \
--enable-soap \
--enable-session \
--enable-bcmath \
--enable-exif \
--enable-fileinfo \
--enable-opcache=no \
--disable-rpath \
--disable-debug \
--without-pear && \
touch ext/phar/phar.phar && \
make -j && make install && \
cp ./php.ini-production /application/php/lib/php.ini && \
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm && \
cp /application/php/etc/php-fpm.conf.default /application/php/etc/php-fpm.conf
RUN chmod +x /etc/init.d/php-fpm
RUN echo "export PATH=$PATH:/application/php/sbin/:/application/nginx/sbin/" >>/etc/profile && source /etc/profile
add start.sh /root/start.sh
RUN /etc/init.d/php-fpm start
RUN chmod +x /root/start.sh
WORKDIR /application/
ADD html/conf/nginx.conf /application/nginx/conf/nginx.conf
CMD ["/application/nginx/sbin/nginx","-c","/application/nginx/conf/nginx.conf"]

    02,构建镜像

docker build -t web-:v3 .

     03,搭建mysql镜像

          可以通过官方的docker镜像源进行安装比较块

wget https://codeload.github.com/docker-library/mysql/zip/master

   另一种自定义:

    

 [root@k8s3 mysql]# cat docker-compose.yml
version: '2'
services:
mysql-master:
build:
context: ./
dockerfile: master/Dockerfile
environment:
- "MYSQL_ROOT_PASSWORD=root"
- "MYSQL_DATABASE=replicas_db"
links:
- mysql-slave
ports:
- "33065:3306"
restart: always
hostname: mysql-master
mysql-slave:
build:
context: ./
dockerfile: slave/Dockerfile
environment:
- "MYSQL_ROOT_PASSWORD=root"
- "MYSQL_DATABASE=replicas_db"
ports:
- "33066:3306"
restart: always
hostname: mysql-slave
 [root@k8s3 mysql]# cat master/Dockerfile
FROM mysql:5.7.
MAINTAINER kingle
ADD ./master/my.cnf /etc/mysql/my.cnf
EXPOSE
CMD ["mysqld"]
[root@k8s3 mysql]# cat master/my.cnf
[mysqld]
server_id=
binlog-ignore-db=mysql
log-bin=replicas-mysql-bin
binlog_cache_size=1M
binlog_format=mixed
expire_logs_days=
slave_skip_errors=
 [root@k8s3 mysql]# cat slave/Dockerfile
FROM mysql:5.7.
MAINTAINER kingle
ADD ./slave/my.cnf /etc/mysql/my.cnf
EXPOSE
CMD ["mysqld"]
 [root@k8s3 mysql]# cat slave/my.cnf
[mysqld]
server_id=
binlog-ignore-db=mysql
log-bin=replicas-mysql-slave1-bin
binlog_cache_size=1M
binlog_format=mixed
expire_logs_days=
slave_skip_errors=
relay_log=replicas-mysql-relay-bin
log_slave_updates=
read_only=

运行命令:

    docker-compose up -d

等待配置完成

四,push镜像到harbor

    

  docker images 可以看见编排出来的包,

  这三个包弄了一下午的编排

  

  

docker tag 192.168.0.167/web/ngphp:v0. 192.168.0.167/web/ngphp:v3
docker tag 192.168.0.167/web/mysql-slave:0.1 192.168.0.167/web/mysql-slave:v0.
docker tag 192.168.0.167/web/mysql-master:0.1 192.168.0.167/web/mysql-master:v0.

  登入harbor私有仓库

 

docker push 192.168.0.167/web/web1:v0.
docker push 192.168.0.167/web/mysql-master:v0.
docker push 192.168.0.167/web/mysql-slave:v0.

  到harbor查看

  

  上传成功了

五,rancher 搭建

    配置rancher

等待启动完成

站点访问:

  

六,配置数据库主从

   主库从库搭建就命名不一样,其余参照下面搭建

  

   点击启动即可

      查看你

  查看主库ip

命令编辑

  授权给从库

  create user 'repl'@'%' identified by '123456'
  GRANT REPLICATION SLAVE ON *.* to 'rep1'@'%' identified by '123456';
  FLUSH PRIVILEGES;
  show mater slave

从库配置

  

 CHANGE MASTER TO MASTER_HOST='10.42.1.31', MASTER_USER='repl', MASTER_PASSWORD='123456', MASTER_LOG_FILE='replicas-mysql-bin.000003',MASTER_LOG_POS=;

  发现一个问题:

  解决:

  主库:

  刷写日志: 记录好binlog 和pos

  

  从库

  stop slave

stop slave ;
reset slave;
CHANGE MASTER TO MASTER_HOST='10.42.1.31', MASTER_USER='repl', MASTER_PASSWORD='123456', MASTER_LOG_FILE='replicas-mysql-bin.000004',MASTER_LOG_POS=;
start slave;

    

    成功解决

    

    从库也一样了

七,wordpress 配置

    根据步骤填写,回不去,少了截图,大家正常发挥,有问题联系,邮箱在下面.

    点击安装即可

  

最新文章

  1. Git学习笔记(Mac Linux系统)
  2. Android开发--仿微信语音对讲录音
  3. 自制简单的.Net ORM框架 (一) 简介
  4. 贴一下WC总结里提到的那道裸题吧。。。
  5. concat,reverse
  6. C++虚函数表原理
  7. 字符串长度计算、截取、url参数获取、计算百分比、时间戳格式化
  8. 转载:mybatis和hibernate 解析
  9. Android Native/Tombstone Crash Log 详细分析(转)
  10. bzoj 3224: Tyvj 1728 普通平衡树 替罪羊树
  11. implemented loader.php
  12. PHP那些最好的轮子
  13. 【转载】QT QTableView用法小结
  14. HDU5744 Keep On Movin (思维题,水题)
  15. 第k个素因子只有3 5 7 的数
  16. [PHP] 控制反转依赖注入的日常使用
  17. Exp6 信息搜集与漏洞扫描 20164313 杜桂鑫
  18. apollo入门(一)
  19. robot_framework Authorization 解决登录超时问题(token)
  20. Enterprise Library 2.0 参考源码索引

热门文章

  1. 【转】SSH指南
  2. mongodb数据库学习【安装及简单增删改查】
  3. C#设计模式系列:适配器模式(Adapter Pattern)
  4. 说一下我认识的*nix下的服务器热重启
  5. Thread Group(线程组)
  6. day4学python 字符编码转换+元组概念
  7. 杨辉三角的Python实现
  8. soapui
  9. python 安装虚拟环境步骤
  10. Samba服务为例、简单了解