开发手册
2.1 编译全部模块
2.2 为其它平台交叉编译:
$ KUN_BUILD_PLATFORMS="linux/amd64" make
2.3 只编译某一个模块:
$ make WHAT=./pkg/controller
用法
Usage: scripts/build-image.sh [OPTIONS]
-h --help 帮助
-m= --module= 模块名称
-i= --image= 镜像名称
-t= --tag= 镜像标签
-e= --env= 部署环境(镜像仓库配置)
如果需要容器build项目,可以使用WITHBUILD环境变量控制
$ WITHBUILD=1 scripts/build-image.sh -e=test -m=funclet -i=mini-funclet -t=dev
例如:打包runner-runtime
$ sudo WITHNODEJS8=1 WITHNODEJS10=1 WITHNODEJS12=1 WITHPYTHON2=1 WITHPYTHON3=1 WITHJAVA8=1 bash scripts/runner-runtime/build.sh image:tag runnertag
您也可以提前配置不同的部署环境镜像仓库 eg: 线上环境的配置目录 测试环境的配置目录 ~/zhangsan/docker/config/test
mkdir -p /tmp/docker/config/online /tmp/docker/config/test
export DOCKER_CONFIG_ONLINE="/tmp/docker/config/online"
export DOCKER_CONFIG_TEST="/tmp/docker/config/test"
$ docker --config $DOCKER_CONFIG_ONLINE login registry.baidubce.com -u <online-user> -p'<online-password>'
# test
$ docker --config $DOCKER_CONFIG_TEST login registry.baidubce.com -u <test-user> -p'<test-password>'
在宿主机上准备faas的数据目录${faasPath}
,eg: /home/faas
# 本地bin包目录
export faasDevBin=/home/xflying/controller/code
4.3.1 调试funclet
若不需要更改funclet,并只想以默认参数启动funclet,则
$ docker run -t -d --privileged -v ${faasPath}:/var/faas -v ${faasPath}/invoker/run:/var/run/faas --name mini-funclet registry.baidubce.com/easyfaas-public/mini-funclet:907546
若需要更改funclet,则以bash作为init命令即可,随后进入容器进行调试 ps : 可将自己的代码mount进容器,此处更换掉/home/fly/funclet
即可
$ docker run -t -d --privileged -v ${faasDevBin}:/home/code -v ${faasPath}:/var/faas -v ${faasPath}/invoker/run:/var/run/faas --name mini-funclet-dev registry.baidubce.com/easyfaas-public/mini-funclet:82b366 /bin/bash
$ docker exec -it mini-funclet-dev /bin/bash
$ ./funclet -v10 --logtostderr
4.3.2 调试controller
若不需要更改controller,并只想以默认参数启动controller,则
$ docker run -t -d -v ${faasPath}/invoker/run:/var/run/faas --name controller regisry.baidubce.com/easyfaas-public/controller:28a179
若需要更改controller,则以sh作为init命令即可,随后进入容器进行调试 ps : 可将自己的代码mount进容器,此处更换掉/home/fly/controller
即可
$ docker run -t -d -v ${faasDevBin}:/home/code -v ${faasPath}/invoker/run:/var/run/faas --name controller-dev registry.baidubce.com/easyfaas-public/controller:28a179 sh