解決docker不加載 /etc/docker/daemon.json文件的問(wèn)題小結(jié)
問(wèn)題起源
如題,最近在ubuntu24.04-LTS-server安裝docker時(shí),安裝成功后設(shè)置源來(lái)設(shè)置鏡像。
設(shè)置完成功拉取鏡像,我就關(guān)機(jī)下次使用。
但是當(dāng)我重啟發(fā)現(xiàn)呢,鏡像都不在了,但是由于網(wǎng)絡(luò)問(wèn)題,鏡像每天都在變,不可能每天更新站點(diǎn)拉取鏡像。于是我就開(kāi)始排查原因。當(dāng)我發(fā)現(xiàn)本身存儲(chǔ)的/var/lib/docker下存儲(chǔ)內(nèi)容沒(méi)有改變時(shí)。
同時(shí)我還發(fā)現(xiàn)每次重啟我上次設(shè)置的鏡像網(wǎng)址都失效了,我就認(rèn)識(shí)到我ubuntu啟動(dòng)時(shí),docker加載的配置文件,不是我們通常認(rèn)為的/etc/docker/daemon.json。解決方案就呼之欲出樂(lè)。
解決方案
正常重啟后先什么都不做。
1.查找你的docker配置文件,有好幾種配置方案
A:使用
ps aux | grep dockerd
我的結(jié)果:
root 1312 2.0 1.9 2210652 75520 ? Ssl 07:09 0:01 dockerd --group docker --exec-root=/run/snap.docker --data-root=/var/snap/docker/common/var-lib-docker --pidfile=/run/snap.docker/docker.pid --config-file=/var/snap/docker/2963/config/daemon.json
root 1415 0.2 1.8 2357832 74752 ? Ssl 07:09 0:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
user 2140 0.0 0.0 6544 2304 pts/0 S+ 07:11 0:00 grep --color=auto dockerd
結(jié)果發(fā)現(xiàn),我居然有 --config-file=/var/snap/docker/2963/config/daemon.json,就是說(shuō)我的docker服務(wù)啟動(dòng)時(shí),時(shí)–config-file=/var/snap/docker/2963/config/daemon.json該位置的daemon.json而不是我們認(rèn)為的/etc/docker/daemon.json文件。但是你手動(dòng)重啟后確實(shí)這個(gè)位置的配置文件,只能說(shuō)十分奇怪了,于是我去尋找原因。于是去網(wǎng)上搜才發(fā)現(xiàn)是因?yàn)榘惭bdocker的這個(gè)包
B:使用查看服務(wù)配置的方法,該方法和我實(shí)踐過(guò),不過(guò)是根據(jù)服務(wù)來(lái)操作的。
systemctl show -p FragmentPath docker
找到類似的配置服務(wù)文件 /lib/systemd/system/docker.service
cat /lib/systemd/system/docker.service | grep ExecStart
查看里面的啟動(dòng)參數(shù),如果有,那你修改成你的daemon.json文件即可成功。如/etc/docker/daemon.json文件即可。
問(wèn)題反思
當(dāng)我看見(jiàn)時(shí)snap目錄是,我就思考APT軟件包一般是不會(huì)安裝在那里的,于是我詢問(wèn)了GPT和去找了snap是什么,發(fā)現(xiàn)可能是因?yàn)槲疫@里24.04安裝的docker-ce是使用類似snap安裝的,但是我明明沒(méi)有使用snap,估計(jì)是教程里添加的阿里源所所用的docker-ce是snap安裝的。如果是apt安裝docker.io應(yīng)當(dāng)就沒(méi)這個(gè)問(wèn)題。
到此這篇關(guān)于解決docker不加載 /etc/docker/daemon.json文件的問(wèn)題的文章就介紹到這了,更多相關(guān)docker不加載 /etc/docker/daemon.json文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker不能綁定靜態(tài)的外網(wǎng)固定ip的問(wèn)題及解決辦法
這篇文章主要介紹了Docker不能綁定靜態(tài)的外網(wǎng)固定ip的問(wèn)題及解決辦法,需要的朋友可以參考下2017-01-01
Docker容器化spring boot應(yīng)用詳解
本篇文章主要介紹了Docker容器化spring boot應(yīng)用詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
使用Docker快速運(yùn)行Firefox并實(shí)現(xiàn)遠(yuǎn)程訪問(wèn)本地火狐瀏覽器的詳細(xì)過(guò)程
文章介紹了如何在Docker中運(yùn)行Firefox瀏覽器,并通過(guò)Cpolar內(nèi)網(wǎng)穿透工具實(shí)現(xiàn)遠(yuǎn)程訪問(wèn),步驟包括部署Firefox、本地訪問(wèn)、安裝Cpolar、配置公網(wǎng)地址、設(shè)置固定二級(jí)子域名等,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-02-02
關(guān)于Docker?Desktop的WSL報(bào)錯(cuò)問(wèn)題解決辦法
這篇文章主要介紹了關(guān)于Docker?Desktop的WSL報(bào)錯(cuò)問(wèn)題解決辦法的相關(guān)資料,排查發(fā)現(xiàn)是因清理%temp%文件夾誤刪關(guān)鍵WSL文件,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2025-03-03
DOCKERFILE學(xué)習(xí)及使用注意事項(xiàng)
Dockerfile 由一行行命令語(yǔ)句組成,并且支持以 # 開(kāi)頭的注釋行。一般的,Dockerfile分為四部分:基礎(chǔ)鏡像信息、維護(hù)者信息、鏡像操作指令、容器啟動(dòng)時(shí)執(zhí)行指令2017-02-02
使用Docker部署todo任務(wù)管理器的實(shí)現(xiàn)
本文介紹使用Docker部署Todo任務(wù)管理器的全過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-07-07

