Merge pull request #95 from tikazyq/develop

Develop
This commit is contained in:
Marvin Zhang
2019-07-31 20:11:18 +08:00
committed by GitHub
8 changed files with 72 additions and 31 deletions

View File

@@ -1,4 +1,3 @@
FROM golang:1.12 AS backend-build
WORKDIR /go/src/app
@@ -9,7 +8,7 @@ ENV GOPROXY https://mirrors.aliyun.com/goproxy/
RUN go install -v ./...
FROM node:8.16.0-alpine AS frontend-build
FROM node:8.16.0 AS frontend-build
ADD ./frontend /app
WORKDIR /app

14
Jenkinsfile vendored
View File

@@ -11,7 +11,7 @@ pipeline {
echo "Running Setup..."
script {
if (env.GIT_BRANCH == 'develop') {
env.MODE = 'test'
env.MODE = 'develop'
} else if (env.GIT_BRANCH == 'master') {
env.MODE = 'production'
} else {
@@ -24,7 +24,7 @@ pipeline {
steps {
echo "Building..."
sh """
docker build -t tikazyq/crawlab:latest .
docker build -t tikazyq/crawlab:latest -f Dockerfile.local .
"""
}
}
@@ -37,13 +37,9 @@ pipeline {
steps {
echo 'Deploying....'
sh """
docker rm -f crawlab | true
docker run -d --rm --name crawlab \
-p 8080:8080 \
-p 8000:8000 \
-v /home/yeqing/.env.production:/opt/crawlab/frontend/.env.production \
-v /home/yeqing/config.py:/opt/crawlab/crawlab/config/config.py \
tikazyq/crawlab master
cd ./jenkins
docker-compose stop | true
docker-compose up -d
"""
}
}

View File

@@ -1,6 +1,6 @@
# Crawlab
![](http://114.67.75.98:8081/buildStatus/icon?job=crawlab%2Fdevelop)
![](http://114.67.75.98:8082/buildStatus/icon?job=crawlab%2Fdevelop)
![](https://img.shields.io/badge/版本-v0.3.0-blue.svg)
<a href="https://github.com/tikazyq/crawlab/blob/master/LICENSE" target="_blank">
<img src="https://img.shields.io/badge/License-BSD-blue.svg">
@@ -50,19 +50,19 @@ docker run -d --rm --name crawlab \
tikazyq/crawlab:0.3.0
```
当然也可以用`docker-compose`来一键启动甚至不用配置MongoDB和Redis数据库。在当前目录中创建`docker-compose.yml`文件,输入以下内容。
当然也可以用`docker-compose`来一键启动甚至不用配置MongoDB和Redis数据库**当然我们推荐这样做**。在当前目录中创建`docker-compose.yml`文件,输入以下内容。
```bash
version: '3.3'
services:
master:
image: tikazyq/crawlab:latest
container_name: crawlab-master
container_name: master
environment:
CRAWLAB_API_ADDRESS: "192.168.99.100:8000"
CRAWLAB_API_ADDRESS: "localhost:8000"
CRAWLAB_SERVER_MASTER: "Y"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis:6379"
CRAWLAB_REDIS_ADDRESS: "redis"
ports:
- "8080:8080" # frontend
- "8000:8000" # backend

View File

@@ -1,6 +1,6 @@
# Crawlab
![](http://114.67.75.98:8081/buildStatus/icon?job=crawlab%2Fdevelop)
![](http://114.67.75.98:8082/buildStatus/icon?job=crawlab%2Fdevelop)
![](https://img.shields.io/badge/version-v0.3.0-blue.svg)
<a href="https://github.com/tikazyq/crawlab/blob/master/LICENSE" target="_blank">
<img src="https://img.shields.io/badge/license-BSD-blue.svg">
@@ -58,12 +58,12 @@ version: '3.3'
services:
master:
image: tikazyq/crawlab:latest
container_name: crawlab-master
container_name: master
environment:
CRAWLAB_API_ADDRESS: "192.168.99.100:8000"
CRAWLAB_API_ADDRESS: "localhost:8000"
CRAWLAB_SERVER_MASTER: "Y"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis:6379"
CRAWLAB_REDIS_ADDRESS: "redis"
ports:
- "8080:8080" # frontend
- "8000:8000" # backend

View File

@@ -7,8 +7,10 @@ mongo:
username: ""
password: ""
redis:
network: tcp
address: "localhost:6379"
address: localhost
password: ""
database: 1
port: 6379
log:
level: info
path: "/var/logs/crawlab"

View File

@@ -103,10 +103,18 @@ func (r *Redis) HKeys(collection string) ([]string, error) {
}
func GetRedisConn() (redis.Conn, error) {
c, err := redis.Dial(
viper.GetString("redis.network"),
viper.GetString("redis.address"),
)
var address = viper.GetString("redis.address")
var port = viper.GetString("redis.port")
var database = viper.GetString("redis.database")
var password = viper.GetString("redis.password")
var url string
if password == "" {
url = "redis://" + address + ":" + port + "/" + database
} else {
url = "redis://x:" + password + "@" + address + ":" + port + "/" + database
}
c, err := redis.DialURL(url)
if err != nil {
debug.PrintStack()
return c, err

View File

@@ -2,12 +2,12 @@ version: '3.3'
services:
master:
image: tikazyq/crawlab:latest
container_name: crawlab-master
container_name: master
environment:
CRAWLAB_API_ADDRESS: "192.168.99.100:8000"
CRAWLAB_API_ADDRESS: "localhost:8000"
CRAWLAB_SERVER_MASTER: "Y"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis:6379"
CRAWLAB_REDIS_ADDRESS: "redis"
ports:
- "8080:8080" # frontend
- "8000:8000" # backend
@@ -16,11 +16,11 @@ services:
- redis
worker:
image: tikazyq/crawlab:latest
container_name: crawlab-worker
container_name: worker
environment:
CRAWLAB_SERVER_MASTER: "N"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis:6379"
CRAWLAB_REDIS_ADDRESS: "redis"
depends_on:
- mongo
- redis

View File

@@ -0,0 +1,36 @@
version: '3.3'
services:
master:
image: tikazyq/crawlab:latest
container_name: master
environment:
CRAWLAB_API_ADDRESS: "114.67.75.98:8000"
CRAWLAB_SERVER_MASTER: "Y"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis"
ports:
- "8080:8080" # frontend
- "8000:8000" # backend
depends_on:
- mongo
- redis
worker:
image: tikazyq/crawlab:latest
container_name: worker
environment:
CRAWLAB_SERVER_MASTER: "N"
CRAWLAB_MONGO_HOST: "mongo"
CRAWLAB_REDIS_ADDRESS: "redis"
depends_on:
- mongo
- redis
mongo:
image: mongo:latest
restart: always
ports:
- "27017:27017"
redis:
image: redis:latest
restart: always
ports:
- "6379:6379"