upsource容器部署

最近在部门推行代码审查工具,发现upsource这个工具,用了下发现还是不错的,现将部署方法记录下。

upsource的部署是放在docker环境中,中间遇到了很多问题,比如容器内的svn链接问题,不过最后都一一搞定。

upsource我用的是2017.1.1922版本,这个版本是现阶段能够po jie的最后的一个版本,最新的2017.2.2057已经改变相关策略

首先在docker中下载upsource,不建议使用官方的命令直接部署,因为需要修改镜像。

docker pull jetbrains/upsource:2017.1.1922

然后修改镜像:

FROM 192.168.40.104/library/upsource:2017.1.1922
MAINTAINER hx<hx@gmail.com>
USER root
RUN rm /opt/upsource/apps/hub/web/WEB-INF/lib/jetbrains.jetpass.userManagement-2017.1.4711.jar
ADD /jetbrains.jetpass.userManagement-2017.1.4711.jar /opt/upsource/apps/hub/web/WEB-INF/lib
EXPOSE 8080

另:

jetbrains.jetpass.userManagement-2017.1.4711.jar为pojie文件

在这里我使用的私有库,用root用户就为了添加svn用户

部署upsource用的rancher,这个工具应该是现阶段能找到的最好的开源的docker管理部署工具了

version: '2'
volumes:
  upsource-lib:
    external: true
    driver: rancher-nfs
  upsource-backups:
    external: true
    driver: rancher-nfs
  upsource-data:
    external: true
    driver: rancher-nfs
  upsource-logs:
    external: true
    driver: rancher-nfs
  upsource-conf:
    external: true
    driver: rancher-nfs
services:
  upsource:
    image: 192.168.40.104/library/upsource:2017.1.1922.2
    stdin_open: true
    volumes:
    - upsource-data:/opt/upsource/data
    - upsource-conf:/opt/upsource/conf
    - upsource-logs:/opt/upsource/logs
    - upsource-backups:/opt/upsource/backups
    tty: true
    ports:
    - 8088:8080/tcp
    labels:
      io.rancher.container.pull_image: always

这个是docker-compose文件,用的持久化是rancher-nfs

部署成功后,登录到容器中,在root用户下使用

svn checkout https://localhost/svn

之后根据页面提示进行相关设定后,upsource使用svn就ok了

部署完成并添加用户和项目后的upsource内存约使用8个G,所以容器宿主机的内存设定最好大点。

后记:

upsource和IntelliJ IDEA、pycharm、webstorm的集成只需要在plugin中添加upsource integrate的插件,重启后在tools中设定upsource地址后就ok了,使用起来非常方便。

原文地址:https://www.cnblogs.com/drnmmond/p/7171245.html