k8s基于gitlab部署only office

阅读: 评论:0

k8s基于gitlab部署only office

k8s基于gitlab部署only office

文章目录

    • 前言
    • 部署MySQL
      • 1.创建本地映射目录
      • 2.1创建配置文件
      • 2.2创建将生成用户并向其颁发权限的 SQL 脚本。
      • 3.编写mysql的yaml文件(拉取密钥,按自己配置的来)
      • 4.编写MySQL的service文件
      • 5.设置env数值
    • 部署文件服务器
      • 1.创建本地映射目录
      • 2.编写only office-document server的yaml文件(拉取密钥,按自己配置的来)
      • 3.编写only office-document server的service文件
      • 4.设置env数值
    • 部署邮件服务器
      • 1.创建本地映射目录
      • 2.编写only office-document server的yaml文件(拉取密钥,按自己配置的来)
          • `$${CI_PROJECT_NAME}主机名自行修改`
      • 3.编写only office-document server的service文件
      • 4.设置env数值
    • 部署控制面板
      • 1.创建本地映射目录
      • 2.编写only office-document server的yaml文件(拉取密钥,按自己配置的来)
      • 3.编写only office-document server的service文件
      • 4.设置env数值
    • 部署社区服务器
      • 1.创建本地映射目录
      • 2.编写only office-document server的yaml文件(拉取密钥,按自己配置的来)
      • 3.编写only office-document server的service文件(可以不使用ingress,如果使用记得把域名加上)
      • 4.设置env数值
    • 问题: 打开文件出现暂时无法访问
    • 问题:无法注册用户

前言

自备Dockerfile,docker-compose.yaml,l文件
Dockerfile可以如下 (我已经把镜像那部分改过来了)

FROM onlyoffice/mailserver

部署MySQL

1.创建本地映射目录

sudo mkdir -p "/app/onlyoffice/mysql/conf.d";
sudo mkdir -p "/app/onlyoffice/mysql/data";
sudo mkdir -p "/app/onlyoffice/mysql/initdb";
sudo mkdir -p  /app/onlyoffice/mysql/log
sudo chmod -R 777 /app/onlyoffice/mysql/log

2.1创建配置文件

echo "[mysqld]
default_authentication_plugin=mysql_native_password
sql_mode = 'NO_ENGINE_SUBSTITUTION'
max_connections = 1000
max_allowed_packet = 1048576000
group_concat_max_len = 2048
log-error = /var/log/mysql/error.log" > /app/onlyoffice/mysql/conf.d/onlyofficef

2.2创建将生成用户并向其颁发权限的 SQL 脚本。

echo "create user 'onlyoffice'@'%' identified by '123456'; 
create user 'mail_admin'@'%' identified by '123456';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' IDENTIFIED BY '123456';
alter user 'root'@'%' identified with mysql_native_password by '123456';
grant all privileges on *.* to 'onlyoffice'@'%' with grant option;
grant all privileges on *.* to 'mail_admin'@'%' with grant option;
flush privileges;"> /app/onlyoffice/mysql/initdb/setup.sql

3.编写mysql的yaml文件(拉取密钥,按自己配置的来)

apiVersion: apps/v1
kind: Deployment
metadata:name: $${ONLY_NAME}-deploymentnamespace: $${ONLY_NAME}labels:app: $${ONLY_NAME}name: $${ONLY_NAME}
spec:replicas: 1selector:matchLabels:app: $${ONLY_NAME}template:metadata:labels:app: $${ONLY_NAME}spec:containers:- name: $${ONLY_NAME}image: mysql:8.0.29imagePullPolicy: IfNotPresent# 就绪状态检查readinessProbe:failureThreshold: 3initialDelaySeconds: 30periodSeconds: 15successThreshold: 2tcpSocket:port: 3306timeoutSeconds: 2# 存活状态检查livenessProbe:failureThreshold: 3initialDelaySeconds: 30periodSeconds: 15successThreshold: 1tcpSocket:port: 3306timeoutSeconds: 2env:- name: MYSQL_ROOT_PASSWORDvalue: "123456"- name: MYSQL_DATABASEvalue: "onlyoffice"ports:- name: mysqlcontainerPort: 3306volumeMounts:- name: $${S3_BUCKET}-datamountPath: /var/lib/mysql- name: $${S3_BUCKET}-logmountPath: /var/log/mysql- name: $${S3_BUCKET}-confmountPath: /etc/mysql/conf.d- name: $${S3_BUCKET}-initdbmountPath: /docker-entrypoint-initdb.d# 容器重启策略restartPolicy: Always# 镜像拉取秘钥,需要在rancher中提前配置imagePullSecrets:- name: $${IMAGE_PULL_SECRET}volumes:- name: $${S3_BUCKET}-confhostPath:path: /app/onlyoffice/mysql/conf.d- name: $${S3_BUCKET}-initdbhostPath:path: /app/onlyoffice/mysql/initdb- name: $${S3_BUCKET}-datahostPath:path: /app/onlyoffice/mysql/data- name: $${S3_BUCKET}-loghostPath:path: /app/onlyoffice/mysql/log

4.编写MySQL的service文件

# service 为pod提供访问方式
apiVersion: v1
kind: Service
metadata:name:  $${ONLY_NAME}-servicelabels:app: $${ONLY_NAME}
spec:type: NodePortports:- name: mysqlport: 3306

本文发布于:2024-02-02 07:30:15,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170683021642285.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:k8s   gitlab   office
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23