开发与jenkins&portainer容器运行ci服务器dockerconfiguration运行导致CPU软locking

一些背景故事告诉你我想要完成的事情(也许我采取了错误的做法,有人有一个更好的主意来解决我的问题):

我正在尝试构build一个CI服务器,用于自动化构build,testing和部署我的一些客户的个人项目或项目。 服务器应该运行一个无头的Ubuntu Linux服务器安装,docker,docker-compose,Jenkins(在Docker容器中),Portainer(在Docker容器中)。 Jenkins将构build项目,运行testing并按configuration部署它们。

硬件:

  • RYZEN 7 1700
  • 微星B350M PRO-VDH,Sockel AM4,DDR4,HDMI,DVI,D-Sub 1x M.2和6x USB 3.1 Gen1 MATX
  • 2 x Ballistix Sport LT BLS16G4D240FSC 16GB单DDR4 2400 MT / s(PC4-19200)DIMM 288针内存

OS:

  • 经销商ID:Ubuntu
  • 说明:Ubuntu 17.04
  • 发行:17.04
  • 代号:zesty

软件:

  • Docker版本17.09.1-ce,build 19e2cf6
  • docker-compose版本1.16.1,build 6d1ac21

jenkins的configuration,我想通过试验和错误的卷挂载。 也许我犯了一些可怕的错误:

cat docker-compose.yml version: 2.1 services: jenkins_servo: build: ./jenkins_servo restart: always volumes: - /lib64/ld-linux-x86-64.so.2:/lib64/ld-linux-x86-64.so.2 - /projects:/media/data/projects - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 - /var/run/docker.sock:/var/run/docker.sock - /[path_to]/jenkins_home:/var/jenkins_home - /lib/x86_64-linux-gnu/libpthread.so.0:/lib/x86_64-linux-gnu/libpthread.so.0 - /usr/bin/docker:/usr/bin/docker - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose - /lib/x86_64-linux-gnu/libc.so.6:/lib/x86_64-linux-gnu/libc.so.6 - /lib/x86_64-linux-gnu/libdl.so.2:/lib/x86_64-linux-gnu/libdl.so.2 ports: - "9001:8080" - "50000:50000" 

Portainer容器支架:

Host Container portianer_data /data /var/run/docker.sock /var/run/docker.sock

一切正常,正如预期一样。 我可以在Jenkins中configuration我的所有项目,一旦我将一个提交推送到某个项目的某个分支(每个项目都定义为docker-compose.yml),Jenkins将使用docker-compose来执行构build任务并运行testing。 之后,它可以部署或什么都不做。 我也喜欢让Portainer运行,因为它提供了一个便捷的方式来观察和控制docker集装箱,甚至从您的手机。

每当我有两个容器(jenkins和Portainer)运行服务器将冻结后一两天。 有时候,我在附有照片的屏幕上打印错误信息(对于质量真的很抱歉,希望您能够阅读某些内容)。

NMI watchdog: BUG: soft lockup - CPU#4 stuck for 22s! [dockerd:1662] NMI watchdog: BUG: soft lockup - CPU#5 stuck for 22s! [kworkerv5:27011]

在这里输入图像说明

现在这已经持续了一个月,我已经认为这是一个硬件错误。 为了排除我的两个docker集装箱的问题,我试图停止一段时间的jenkins容器,似乎已经解决了这个问题,五天以来没有冻结。 但是因为我需要jenkins来运行我的CI任务,我必须让jenkins运行。 而且我宁愿将它放在Docker容器中,以使CI服务器configuration更加便于携带和维护。

你看到一些软件错误或错误configuration的明显迹象? 还是有很好的机会,这可能是一个硬件错误?

感谢您的帮助。