1. 时区修改:
将docker宿主机的中文时区复制到容器中:
容器中执行:
mkdir -p /usr/share/zoneinfo/Asia
exit
容器外执行:
docker cp /usr/share/zoneinfo/Asia/Shanghai 容器ID或容器名:/usr/share/zoneinfo/Asia
再次进入容器中修改时区配置
docker exec -it -u root 容器Id或容器名 bash
执行命令 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
jenkins中的openjdk使用的时区是/etc/timezone中的配置,需要修改这里的配置为Asia/Shanghai
vim /etc/timezone
编辑内容,保存退出:
Asia/Shanghai
这样还没有起作用,需要重启docker,重启容器。
2. 修改环境变量:
- 停止docker
exit # 退出容器
sudo service docker stop # 关闭docker
sudo service docker restart
- 修改环境变量的文件中-ENV部分:/var/lib/docker/containers/容器id/config.v2.json
- 修改后保存,重启docker
docker restart autotest-jenkins
- 重启容器:
docker exec autotest-jenkins env
- 查看容器的环境变量:
docker exec -it --user root autotest-jenkins /bin/bash
- 进入容器
3. 中文乱码问题:
根据上面步骤修改环境变量(添加)
"JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8"
保存重启后,再次构建就不会中文乱码了。
参考链接:
https://blog.csdn.net/felix_yujing/article/details/52579248
https://blog.csdn.net/u010448530/article/details/102842320
https://www.cnblogs.com/xiaolangjianke/p/14150493.html