diff --git a/Dockerfile.local b/Dockerfile.local
index c08719aa..ed4e7e96 100644
--- a/Dockerfile.local
+++ b/Dockerfile.local
@@ -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
diff --git a/Jenkinsfile b/Jenkinsfile
index b22488cc..64d123f8 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -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
"""
}
}
diff --git a/README-zh.md b/README-zh.md
index 0b4d9849..5203cd66 100644
--- a/README-zh.md
+++ b/README-zh.md
@@ -1,6 +1,6 @@
# Crawlab
-
+

@@ -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
diff --git a/README.md b/README.md
index 8da20e5a..fa3c5625 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Crawlab
-
+

@@ -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
diff --git a/backend/conf/config.yml b/backend/conf/config.yml
index 3e7aa234..30b7e786 100644
--- a/backend/conf/config.yml
+++ b/backend/conf/config.yml
@@ -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"
diff --git a/backend/database/redis.go b/backend/database/redis.go
index 17382122..ffebf776 100644
--- a/backend/database/redis.go
+++ b/backend/database/redis.go
@@ -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
diff --git a/docker-compose.yml b/docker-compose.yml
index 8b7019f9..d44d5024 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -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
diff --git a/jenkins/docker-compose.yml b/jenkins/docker-compose.yml
new file mode 100644
index 00000000..57c85e1e
--- /dev/null
+++ b/jenkins/docker-compose.yml
@@ -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"
\ No newline at end of file