微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

K8S-实践-wordpress搭建

 构建基础镜像

构建PHP镜像

FROM centos:web

RUN yum install -y  https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm && yum install  PHP56-PHP-fpm PHP56-PHP-MysqL -y
ADD www.conf /opt/remi/PHP56/root/etc/PHP-fpm.d/www.conf
#RUN useradd Nginx -u 2019
ADD run_PHP.sh /usr/local/bin/run_PHP.sh
EXPOSE 9000

CMD ["/usr/local/bin/run_PHP.sh"]

构建wordpress-Nginx镜像

FROM Nginx-base:v1.14.2

ADD Nginx.conf /usr/local/Nginx/conf/Nginx.conf
ADD run_Nginx.sh /apps/Nginx/sbin/run_Nginx.sh
RUN mkdir -pv /home/Nginx/wordpress
RUN chown Nginx.Nginx /home/Nginx/wordpress/ -R

EXPOSE 80 443

CMD ["/apps/Nginx/sbin/run_Nginx.sh"]

 

 查看镜像

]# docker images
REPOSITORY                                               TAG                 IMAGE ID            CREATED             SIZE
wordpress-Nginx                                          v5.0.2              e5cfaeb3cf4e        8 minutes ago       837MB
wordpress-PHP                                            v5.6.2              b16b76e1cadb        About an hour ago   928MB

 

wordpress.yml

kind: Deployment
#apiVersion: extensions/v1beta1
apiVersion: apps/v1
Metadata:
  labels:
    app: wordpress-app
  name: wordpress-app-deployment
  namespace: magedu
spec:
  replicas: 1
  selector:
    matchLabels:
      app: wordpress-app
  template:
    Metadata:
      labels:
        app: wordpress-app
    spec:
      containers:
      - name: wordpress-app-Nginx
        image: wordpress-Nginx:v5.0.2
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 80
          protocol: TCP
          name: http
        - containerPort: 443
          protocol: TCP
          name: https
        volumeMounts:
        - name: wordpress
          mountPath: /home/Nginx/wordpress
          readOnly: false

      - name: wordpress-app-PHP
        image: wordpress-PHP:v5.6.2
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 9000
          protocol: TCP
          name: http
        volumeMounts:
        - name: wordpress
          mountPath: /home/Nginx/wordpress
          readOnly: false

      volumes:
      - name: wordpress
        nfs:
          server: 192.168.64.113
          path: /data/k8sdata/magedu/wordpress


---
kind: Service
apiVersion: v1
Metadata:
  labels:
    app: wordpress-app
  name: wordpress-app-spec
  namespace: magedu
spec:
  type: NodePort
  ports:
  - name: http
    port: 80
    protocol: TCP
    targetPort: 80
    nodePort: 30031
  - name: https
    port: 443
    protocol: TCP
    targetPort: 443
    nodePort: 30033
  selector:
    app: wordpress-app

构建PHP测试页面,index.PHP

<?PHP
    PHPinfo();
?>

 

测试访问

http://192.168.64.110:30031/index.PHP

http://192.168.64.110:30031

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐