zoukankan      html  css  js  c++  java
  • Postgres 10.11安装教程

    Postgres搭建

    考虑到Drone和Sonarqube等都需要借助Postgres存储,为了保证CI服务的高效的工作,将考虑独立其中依赖的数据库,避免在繁忙时占用过多资源从而影响整体CI的速度。

    一、 CentOS设置

    1. 更换阿里源

    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    
    yum makecache
    

    2. 安装网络工具

    yum install net-tools -y
    

    3. 使用阿里NTP服务

    yum install chrony -y
    
    sed -i "/server/d" /etc/chrony.conf
    
    vi /etc/chrony.conf 增加 server ntp.aliyun.com iburst
    
    systemctl restart chronyd
    
    chronyc tracking
    

    4. 关闭防火墙

    systemctl stop firewalld
    systemctl disable firewalld
    

    二、 安装Docker-CE

    1. 安装依赖包

    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    

    2. 设置仓库

    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    

    3. 安装Docker

    sudo yum install -y docker-ce docker-ce-cli containerd.io
    

    4. 启动并设置自启动

    sudo systemctl start docker
    
    sudo systemctl enable docker
    

    5. 设置加速器

    vi /etc/docker/daemon.json 添加如下内容
    
    {
      "registry-mirrors": ["https://harbor.vip56.cn"]
    }
    
    sudo systemctl restart docker
    

    三、 安装Postgres

    1. 下载镜像包

    官方仓库地址

    docker pull postgres:10.11
    

    如果下载比较慢,可以利用公司内部的仓库harbor.vip56.cn/common/postgres:10.11

    2. 启动指令

    docker run -d -p 5432:5432 -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=123456 -v /my/own/datadir:/var/lib/postgresql/data --name postgres --restart=always postgres:10.11
    

    3. 使用Web ui

    具体方式可以参考本文档

    docker run -d -p 80:80 -e PGADMIN_DEFAULT_EMAIL=admin@domain.com -e PGADMIN_DEFAULT_PASSWORD=sino5802486 --name pgadmin --restart=always dpage/pgadmin4:4.15
    

    四、 Drone改用pg

    由于Drone默认使用SQLite进行存储,在部分场景下并不能提供有效的支持,为此我们需要将其存储修改为其他方式。

    1. 迁移数据

    由于基于SQLite进行存储了一定的数据,为了保证数据0丢失,这里我们需要借助其他工具进行迁移,这里可以参考pgloader进行迁移,主要指令如下:

    pgloader ./test/sqlite/sqlite.db postgresql:///newdb
    

    注意,由于默认官网的可能存在部分设置问题这里可用使用优化过的镜像dimitri/pgloader:ccl.latest,然后进入容器中执行如下示例的语句:

    pgloader /data/database.sqlite postgresql://[username]:[password]@[host]:5432/drone?sslmode=disable
    

    2. 调整Drone配置

    由于Drone采用Docker进行部署,所以我们需要增加额外的环境变量即可使用:

    DRONE_DATABASE_DRIVER=postgres
    DRONE_DATABASE_DATASOURCE=postgres://root:password@1.2.3.4:5432/postgres?sslmode=disable
    

    完成以上配置后启动Drone服务,可以看到对应的数据库已经采用postgres了。

    五、 SonarQube存储修改

    由于SonarQube本身就已经使用postgres存储了,所以数据可以直接进行迁移,完成迁移后对应修改如下:

    vi /conf/sonar.properties
    
    sonar.jdbc.username=sonar
    sonar.jdbc.password=sonar
    
    sonar.jdbc.url=jdbc:postgresql://localhost/sonar
    

    完成后重启服务即可

  • 相关阅读:
    AD转化器分类及特点和选用
    采样频率 、采样率
    RGBA alpha 透明度混合算法
    SDRAM中数据掩码的作用
    Allegro---层叠结构设置
    PCB主线布线规范—高速线之DDR2
    Allegro 反射仿真--拓扑结构的提取提取及波形分析
    Allegro 反射仿真--仿真设置
    Allegro 反射仿真--IBIS模型转化
    SigXplorer设置延时及Local_Global
  • 原文地址:https://www.cnblogs.com/yaozhenfa/p/13679583.html
Copyright © 2011-2022 走看看