简化包上传到JCenter的步骤

编辑gradle.properties 文件

gradle.properties 文件有两个地方,一个在项目本身里,一个在系统里。我建议这种每次都一样的配置直接放在系统里面

#在Mac上,打开终端输入(把用户名替换成自己的)
vi /Users/用户名/.gradle/gradle.properties 

加入

#jcenter 上的用户名和api key
BINTRAY_USER=userName
BINTRAY_KEY=apikey

#开发者信息
DEVELOPER_ID=HANGOX
DEVELOPER_NAME=hangox
DEVELOPER_EMAIL=liang.hanguang93@gmail.com

退出保存即可。

编辑项目的build.gradle

加入两个插件的引用

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7'
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'

    }
}

编辑library 的build.gradle

在想要上传的module的build.gradle加入

ext{
    eGroup = 'com.hangox'
    eArtifactId = 'polygon-imageview'
    eName = "polygonImageView"
    eDescription = ''
    eVersion = '1.0'
    eVcsUrl = 'https://github.com/hangox/PolygonImageView.git'
    eVcsTag = 'v1.0' //git tag的名字,可以为空
    eWebsiteUrl = 'https://github.com/hangox/PolygonImageView'

}

//这一行不用的时候建议注释掉,因为国外DNS的原因,有时候会找不到dns的,导致编译失败
apply from : "https://raw.githubusercontent.com/hangox/bintray-push/v1.0/upload.gradle"

最后的项目引用将会是这样:eGroup:eArtifactId:eVersion
对于我这个项目,也就是 com.hangox:polygon-imageview:1.0

开始上传

在项目根目录下运行

#本地有安装gradle
gradle bintrayUpload

#使用项目自带的gradle

#mac
./gradlew  bintrayUpload

#win
gradlew.bat bintrayUpload

去jcenter 上点开申请

这个很多教程都有,就不说明了

感谢

gradle-publish

ownCloud部署之docker实现

ownCloud简介

ownCloud 是一个开源的云盘解决方案,用的是PHP(还不支持PHP7),性能一般也就够。支持3个数据库,本地的SQLite ,MySQL和PostgreSQL。本次部署中,将会使用MySQL。

镜像选取

ownCloud 这个解决方案比较成熟,已经有官方的docker镜像了,我们只是需要在官方的docker镜像上修改就好了。

加入Microsoft Office 文档支持

由于我的老大要求必须要支持在线预览MS文档,所以我们还需要对官方的镜像加入一些东西。具体内容就是安装libreOffice 以支持在线预览。

具体Dockerfile如下

FROM owncloud
MAINTAINER <HangoX liang.hanguang93@gmail.com>
RUN apt-get update && apt-get install -y libreoffice

由于使用的是Daocloud的stack,不支持在docker-compose 中build镜像,所以需要自己把owncloud的镜像先构建好才能在docker-compose使用

编写docker-compose.yml

带MYSQL版本:

version: '3.0'
services:
  owncloud:
    image: daocloud.io/hangox/owncloud:v9.1.4-2
    privileged: false
    restart: always
    ports:
    - 9999:80
    volumes:
    - /data/owncloud:/var/www/html
    links:
    - mysql:db

  mysql:
    image: library/mysql:5.6.35
    privileged: false
    restart: always
    ports:
    - 3306:3306
    volumes:
    - /data/mysql:/var/lib/mysql
    environment:
    - MYSQL_ROOT_PASSWORD=heygears-admin
    - MYSQL_USER=owncloud
    - MYSQL_PASSWORD=heygears-owncloud
    - MYSQL_DATABASE=owncloud


owncloud 中的镜像是我自己构建的,不公开的,需要填上自己的owncloud 镜像。
mysql 中的 端口不公开是最好的,这里公开只是为了方便外部调试而已。
mysql:db 中的db名字可以随便起,但是要记得,这个东西有大用

已有MySQL Docker容器

version: '3.0'
services:
  owncloud:
    image: daocloud.io/hangox/owncloud:v9.1.4-2
    privileged: false
    restart: always
    ports:
    - 9999:80
    volumes:
    - /data/owncloud:/var/www/html
  external_links:
    - <mysql容器名>:db


测试与访问

打开<主机ip>:9999 将会看到以下界面

这个时候mysql的网址就是刚才起的别名db了(其实在env里面是大写的,只是域名不分大小写而已😂)