1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/khs1994-docker-ci

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.TLS.md 3.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
khs1994 Отправлено 08.01.2019 17:00 8d5ee1d

私有化 CI/CD 解决方案 (TLS)

GitHub stars star

重要提示

本项目基于 Drone 0.8.x 版本,近期 Drone 发布了 1.x 版本与本项目不兼容!

  • 0.8.x 文档 https://0-8-0.docs.drone.io/
  • 1.x 文档 https://docs.drone.io/

微信订阅号

关注项目作者微信订阅号,接收项目最新动态

内部端口

  • Gogs 3000 22

  • Drone 8000

  • Docker Registry 5000

准备

  • 域名

  • 公网 IP (推荐,但不是必须)

  • *.CI_DOMAIN 通配符 TLS 证书 (acme.sh 可以免费申请)或 git.CI_DOMAIN drone.CI_DOMAIN 网址的 TLS 证书。

快速开始

初始化

首次使用本项目时,务必执行以下命令完成初始化。

$ ./ci

编辑 .env 文件

  • CI_HOST 为主机 IP (建议使用内网 IP, 例如 192.168.199.100)

  • CI_DOMAIN 为服务主域名(例如 t.khs1994.com

  • Windows 用户请将 COMPOSE_CONVERT_WINDOWS_PATHS=1 取消注释

使用 khs1994-docker/lnmp 的 MySQL Redis NGINX 服务(可选项)

修改 .env 中的 CI_INCLUDE 变量,若 git 使用 Gogs 则只保留 gogs 即可,若使用 GitHub,请留空。

CI_INCLUDE="gogs"

编辑 docker-compose.override.yml,将以下内容取消注释。

networks:
  backend:
    external: true
    name: lnmp_backend
  frontend:
    external: true
    name: lnmp_frontend

CI 启动之前必须先启动 khs1994-docker/lnmp

$ ./ci up-tls

将生成的 NGINX 配置移入 khs1994-docker/lnmp 项目的 NGINX 配置目录

config/nginx/drone.conf config/nginx/gogs.conf

自行调整 SSL 相关配置。

将 SSL 证书移入 khs1994-docker/lnmp 项目的 NGINX 配置目录的 ssl 文件夹内。

注意 SSL 证书文件名与 NGINX 配置一致。

NGINX 配置好之后,重启 khs1994-docker/lnmp

$ lnmp-docker restart nginx

443 端口是否占用

若使用 khs1994-docker/lnmp 的 NGINX 服务,请忽略此节。

根据 443 端口是否占用情况,使用下面的命令启动 CI 服务

  • 已占用->实体机运行 NGINX

    $ ./ci up-tls --use-external-nginx=/etc/nginx/conf.d

    重启 NGINX (--use-external-nginx 后边的路径为 NGINX 配置文件所在路径,必须为绝对路径)

  • 已占用->容器运行 NGINX

    $ ./ci up-tls --use-external-nginx=/etc/nginx/conf.d

    重启 NGINX 容器

  • 未占用

    编辑 .env 文件

    CI_INCLUDE="gogs nginx redis mysql"
    $ ./ci up-tls [-d] [--reset]

访问测试

假设 CI_DOMAIN 设置为 t.khs1994.com

则 Drone 访问地址为 https://drone.t.khs1994.com,Gogs 访问地址为 https://git.t.khs1994.com

错误排查

进入 logs 文件夹内,查看日志文件排错。

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/khs1994-docker-ci.git
git@api.gitlife.ru:oschina-mirror/khs1994-docker-ci.git
oschina-mirror
khs1994-docker-ci
khs1994-docker-ci
master