容器啟動成功,但是處於unhealthy狀態,登錄界面500。
docker logs gitlab
最終錯誤是
err="opening storage failed: open block /var/opt/gitlab/prometheus/data/01D2M4JGVWFJ33P8H7KF229PV4: invalid magic number 0"
起初以為是文件夾權限問題,但往上面看,發現其實是redis未能加載數據文件,啟動失敗造成的。
2019-04-21_06:15:49.62499 20813:M 21 Apr 06:15:49.624 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
2019-04-21_06:15:49.62500 20813:M 21 Apr 06:15:49.624 # Wrong signature trying to load DB from file
2019-04-21_06:15:49.62501 20813:M 21 Apr 06:15:49.624 # Fatal error loading the DB: Invalid argument. Exiting.
初步分析是應用在運行狀態下,redis被強制停止造成了數據文件不完整,重啟redis就會失敗。
因此,我找到了redis的數據文件,刪掉了數據文件dump.rdb,然后重啟gitlab就好了
又可以愉快的玩耍啦。