~、基于容器开发项目,docker服务日志查看
修改配置:
Makefile 、test/fixtures/dockerenv/.env , 根据本机下载的fabric系列镜像,微调镜像版本号。
Makefile :行25,改为:DOCKER_COMPOSE_CMD ?= /opt/usr/bin/docker-compose-123
populate-fixtures.sh :18行的宏"SCRIPT_REVISION"置空,跳过"git"之"checkout分支"检查+报错("停止在文件系统边界(未设置 GIT_DISCOVERY_ACROSS_FILESYSTEM)")。
//勿将"test/fixtures/fabric/v1.4/config/configtx.yaml"里的"orderer type"改作"kafka",fabsdkgo-beta1默认配置中,没有Kafka容器相关的设置(.env、docker-compose.yaml等)。
/devel/tmp4d/dev/fabric-1.4.1/build/_worksp-Fabric-141 $
export PATH=$PWD/bin:$PATH # 将Fabric工具命令插入系统执行路径
/media/SOFTWARE/Tmp4Dev/dev/fab_/fabric-sdk-go-1.0.0-beta1 $ //“make dockerenv-stable-up”工作命令集 + 宏展开
GOPATH=/devel/tmp4d/dev/go/gopath make dockerenv-stable-up // 退出: ^C Gracefully stopping... (press Ctrl+C again to force)
... ... ...
chaincoded_1 | WARNING: no logs are available with the 'none' log driver
org1ca1 | WARNING: no logs are available with the 'none' log driver
orderer1 | WARNING: no logs are available with the 'none' log driver // docker服务日志无法查看
org1peer1 | WARNING: no logs are available with the 'none' log driver
builde
golangruntime_1 | WARNING: no logs are available with the 'none' log driver
... ... ...
/media/SOFTWARE/Tmp4Dev/dev/fab_/fabric-sdk-go-1.0.0-beta1/test/fixtures/dockerenv $
ps -ef | grep container-ip //查看容器分配IP/opt/usr/bin/docker-compose-123 -f docker-compose.yaml -f docker-compose-std.yaml ps
/opt/usr/bin/docker-compose-123 -f docker-compose.yaml -f docker-compose-std.yaml logs -f org1peer1 // docker服务日志无法查看 // 注,sdk中的容器服务名别致:"services:"的下一级列表看下。
Attaching to fabsdkgo_org1peer1_1
fabsdkgo_org1peer1_1 | WARNING: no logs are available with the 'none' log driver
处理。
(×)修改 test/fixtures/dockerenv/docker-compose.yaml,在需要日志输出的服务配置节中,找到并屏蔽以下两行 :
logging:
driver: none
(×)Makefile 修改,目标 "dockerenv-stable-up" :在执行命令末尾,增加"-d 2>&1",即转后台输出日志,需要时查看即可:
$(DOCKER_COMPOSE_CMD) $(BASE_DOCKER_COMPOSE_FILES) up $(DOCKER_COMPOSE_UP_STANDALONE_FLAGS) -d 2>&1
注,输出日志转入后台,则无法直接按键"^+C"来关闭清理容器群,可"make clean-tests",或再次执行"make dockerenv-stable-up",当流程走到关闭旧容器、清除旧容器时,再按"^+C"退出即可。