詳解修改docker時區(qū)及docker常用命令
前幾天遇到這樣一個業(yè)務(wù)場景,數(shù)據(jù)庫運行在docker 中,docker 的市區(qū)是utc 所以就跟北京時間相差8個小時。但是又不能重新運行一個容器,只能保證數(shù)據(jù)庫運行狀態(tài),并把宿主機的時區(qū)復(fù)制給docker 容器。很苦惱,
首先我先把宿主機的時區(qū)改成啦CST 北京時間。然后把宿主機的時區(qū)復(fù)制給docker 容器。命令如下
docker cp /etc/localtime:【容器ID或者NAME】/etc/localtime
當(dāng)然也可以進入容器進行修改時區(qū)(不過我的容器修改的時候總是報/etc/localtime 文件只讀,不讓修改。所以就用了上面的方法),命令如下
首先添加所有的時區(qū)
然后再修改時區(qū)
apk add tzdata ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime echo "Asia/Shanghai" > /etc/timezone
當(dāng)然,在容器內(nèi)改,也很麻煩,每次啟動新的容器那么就要修改,所以在dockerfile 中修改更好啦。命令如下
ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
最后附上docker 常用命令
docker ps 查看運行的容器
docker ps -a 查看停止的容器
docker ps -q 僅列出容器ID
docker ps -s 顯示容器大小。
docker images 查看鏡像
docker images -q 僅列出鏡像ID
docker images –tree 以樹狀結(jié)構(gòu)列出鏡像的所有提交歷史。
docker pull IMAGE_ID 下載image
docker push IMAGE_ID 上傳image
docker rmi IMAGE_ID 刪除image
docker rmi -f 強行移除該鏡像,即使其正被使用;
docker logs -f <容器名orID> 查看容器日志
docker start|stop|restart 啟動、停止和重啟一個或多個指定容器。
啟動一個container并進入交互模式
docker start -i containerID
顯示一個鏡像的歷史;
docker history image_name
進入容器
docker exec -it 容器id bin/bash
啟動容器并啟動bash(交互方式):
$docker run -i -t <image_name/continar_id> /bin/bash
啟動容器以后臺方式運行(更通用的方式):
$docker run -d -it image_name
docker run 命令解釋
-d 后臺運行容器,并返回容器ID;
-i 以交互模式運行容器,通常與 -t 同時使用;
-t 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;
將container的端口映射到宿主機的端口
docker run -i -t -p <host_port:contain_port>
將一個container固化為一個新的image,后面的repo:tag可選
docker commit <container> [repo:tag]
刪除一個或多個container
docker rm <container...>
刪除所有的container
docker rm `docker ps -a -q`
同上, 刪除所有的container
docker ps -a -q | xargs docker rm
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Docker鏡像用普通用戶啟動服務(wù)的實現(xiàn)
使用普通用戶啟動Docker容器中的服務(wù),可以有效降低潛在的安全風(fēng)險,本文主要介紹了Docker鏡像用普通用戶啟動服務(wù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07Docker本地鏡像的導(dǎo)出導(dǎo)入兩種方案介紹
這篇文章主要介紹了Docker本地鏡像的導(dǎo)出導(dǎo)入兩種方案的相關(guān)資料,兩種方法分別是export/import和save/load兩種方案,文中并對比了它們的差別和應(yīng)用場景,需要的朋友可以參考下2025-03-03如何使用docker?compose部署dify(大模型開發(fā)使用平臺)
Dify是一款生成式AI應(yīng)用中間件,面向有私有部署與數(shù)據(jù)合規(guī)需求的企業(yè)用戶,推動企業(yè)向AI+時代轉(zhuǎn)型,這篇文章主要介紹了使用docker compose部署dify(大模型開發(fā)使用平臺),需要的朋友可以參考下2025-05-05Docker暴露2375端口導(dǎo)致服務(wù)器被攻擊問題及解決方法
這篇文章主要介紹了Docker暴露2375端口導(dǎo)致服務(wù)器被攻擊問題及解決方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04在Ubuntu?Server?22.04上安裝?Docker的詳細步驟記錄
通過使用容器技術(shù),Docker能夠讓開發(fā)人員將應(yīng)用及其依賴環(huán)境一同打包,從而實現(xiàn)快速部署、一致的開發(fā)環(huán)境和優(yōu)秀的可移植性,這篇文章主要給大家給大家介紹了關(guān)于在Ubuntu?Server?22.04上安裝?Docker詳細步驟的相關(guān)資料,需要的朋友可以參考下2024-08-08