Kubernetes部署mindoc

  1. Kubernetes部署mindoc系统
    1. 一、简介
    2. 二、制作docker镜像
    3. 三、部署在Kubernetes上

Kubernetes部署mindoc系统

一、简介

​ 记录将mindoc系统制作成docker镜像后,部署在Kubernetes系统上。

二、制作docker镜像

1、下载mindoc系统安装包并解压

mkdir -p /dockerfile/mindoc
wget -O /dockerfile/mindoc https://github.com/mindoc-org/mindoc/releases/download/v2.0/mindoc_linux_amd64.zip
unzip /dockerfile/mindoc

2、创建数据库

yum install mairadb-server -y   #安装数据库
systemctl start mariadb     #启动数据库
systemctl enable mairadb  #设置数据库开机自启动
mysql_secure_installation  #初始化数据库
mysql -u root -p           #连接数据库
use mysql;               #使用mysql 数据库
update user set host = '%' where user = 'root';   #修改root远程登录
CREATE DATABASE mindoc_db  DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;  #创建mindoc的数据库

3、编辑mindoc配置文件conf/app.conf,配置数据库参数,配置完成后执行安装

####################MySQL 数据库配置###########################
#支持MySQL和sqlite3两种数据库,如果是sqlite3 则 db_database 标识数据库的物理目录
db_adapter="${MINDOC_DB_ADAPTER||mysql}"
db_host="${MINDOC_DB_HOST||IP}"
db_port="${MINDOC_DB_PORT||3306}"
db_database="${MINDOC_DB_DATABASE||mindoc_db}"
db_username="${MINDOC_DB_USERNAME||root}"
db_password="${MINDOC_DB_PASSWORD||密码}"
#开始安装
./mindoc_linux_amd64 install 
#最后会返回
Install Successfully!

4、编辑dockerfile文件

vi /dockerfile/Dockerfile
from centos
COPY ./mindoc /mindoc
ENTRYPOINT ["/mindoc/mindoc_linux_amd64"]

5、编译镜像

docker build -t mindoc:v1 .

6、测试镜像

docker run -itd mindoc:v1
docker exec -it 容器id /bin/bash
curl 127.0.0.1:8181 #查看是否有数据,有则成功。

7、将镜像上传至公有云

三、部署在Kubernetes上

1、编写Deployment文件

apiVersion: apps/v1
kind: Deployment
metadata:
   name: test
spec:
   replicas: 4
   selector:
       matchLabels:
          app: test
   strategy:
       type: RollingUpdate
   template: 
       metadata:
          labels:
             app: test
       spec:
          restartPolicy: Always
          containers:
           - name: test
             image: swr.cn-east-3.myhuaweicloud.com/mindoc/mindoc:v1
             imagePullPolicy: Always
             ports:
              - containerPort: 8181
                protocol: TCP

2、,运行Deployment,查看pod日志,验证系统

kubectl apply -f test.yaml
kubectl get pods #获取pod名称
kubectl logs -f pod名称

3、编写service文件

apiVersion: v1
kind: Service
metadata:
    name: test
spec:
    ports:
      - port: 80
        targetPort: 8181
    selector: 
        app: test  #选择pod标签

4、运行service,查看service 的cluster ip地址。

kubectl apply -f testservice.yaml #运行service
kubectl get services  #获取service信息
curl  Cluster IP #看返回值为这个则成功<a href="http://ip/?url=http:%2F%2F%2F">Found</a>.

文章内容仅用于作者学习使用,如果内容侵犯您的权益,请立即联系作者删除,作者不承担任何法律责任。

×

喜欢就点赞,疼爱就打赏