Docker容器啟動的全方位方法匯總
更新時間:2025年12月21日 14:32:03 作者:阿杰AJie
這篇文章主要介紹了Docker的基本啟動和運(yùn)行模式,包括容器的啟動、后臺運(yùn)行、命名、端口映射、數(shù)據(jù)持久化、環(huán)境變量配置、重啟策略、交互模式等,并提供了常用容器和鏡像管理命令,以及系統(tǒng)信息與清理命令,總結(jié)強(qiáng)調(diào)了必需、推薦和可選的啟動選項參數(shù)
一、最基礎(chǔ)的啟動
docker run <鏡像名>
- 僅啟動容器,不映射端口,不持久化數(shù)據(jù)
- 容器退出后數(shù)據(jù)會丟失
二、后臺運(yùn)行
docker run -d <鏡像名>
-d→ detached 模式,后臺運(yùn)行- 常用于服務(wù)類鏡像(MySQL、Redis、Nginx 等)
三、命名容器
docker run --name mycontainer <鏡像名>
- 方便管理、停止、刪除
- 例如
docker stop mycontainer
四、端口映射(外部訪問)
docker run -p <宿主機(jī)端口>:<容器端口> <鏡像名>
- Web 服務(wù)、數(shù)據(jù)庫必須映射端口
- 多端口映射示例:
docker run -p 8080:80 -p 443:443 nginx
五、數(shù)據(jù)持久化(卷和目錄掛載)
- 掛載宿主機(jī)目錄
docker run -v /宿主機(jī)路徑:/容器路徑 <鏡像名>
示例:
docker run -v /data/mysql:/var/lib/mysql mysql:8.0
- Docker 卷
docker volume create myvolume docker run -v myvolume:/容器路徑 <鏡像名>
- 卷管理方便,可通過
docker volume ls查看
六、環(huán)境變量配置
docker run -e KEY=VALUE <鏡像名>
數(shù)據(jù)庫鏡像常用:
MYSQL_ROOT_PASSWORDMYSQL_DATABASEMYSQL_USERMYSQL_PASSWORD
Web 服務(wù)鏡像常用:
TZ(時區(qū))APP_ENV、DEBUG等自定義變量
七、重啟策略
docker run --restart <策略> <鏡像名>
no→ 不自動重啟(默認(rèn))always→ 容器停止或 Docker 重啟都會自動啟動unless-stopped→ 除非手動停止,否則自動啟動on-failure[:最大重試次數(shù)]→ 出錯自動重啟
八、交互模式(進(jìn)入容器)
docker run -it <鏡像名> /bin/bash
-it→ 交互模式 + 分配偽終端- 適用于調(diào)試、臨時測試
九、組合啟動示例(生產(chǎn)環(huán)境通用模板)
docker run -d \ --name <容器名> \ -p <宿主端口>:<容器端口> \ -v <宿主路徑>:<容器路徑> \ -e KEY1=VALUE1 -e KEY2=VALUE2 \ --restart unless-stopped \ <鏡像名>
十、常用容器管理命令
| 命令 | 作用 |
|---|---|
docker ps | 查看運(yùn)行中的容器 |
docker ps -a | 查看所有容器 |
docker stop <容器> | 停止容器 |
docker start <容器> | 啟動容器 |
docker restart <容器> | 重啟容器 |
docker rm <容器> | 刪除容器 |
docker logs <容器> | 查看日志 |
docker exec -it <容器> <命令> | 進(jìn)入容器或執(zhí)行命令 |
十一、鏡像管理
| 命令 | 作用 |
|---|---|
docker pull <鏡像> | 下載鏡像 |
docker images | 查看本地鏡像 |
docker rmi <鏡像> | 刪除鏡像 |
docker save -o <文件>.tar <鏡像> | 導(dǎo)出鏡像 |
docker load -i <文件>.tar | 導(dǎo)入鏡像 |
docker tag <鏡像> <新鏡像> | 鏡像打標(biāo)簽 |
docker push <鏡像> | 推送到倉庫 |
十二、系統(tǒng)信息與清理
| 命令 | 作用 |
|---|---|
docker info | 查看 Docker 系統(tǒng)信息 |
docker version | 查看版本 |
docker system df | 查看磁盤占用 |
docker system prune -a | 清理無用鏡像、容器、網(wǎng)絡(luò) |
十三、特殊啟動選項
| 需求 | 參數(shù) |
|---|---|
| 限制內(nèi)存 | --memory=1g |
| 限制 CPU | --cpus=1.5 |
| 設(shè)置 hostname | --hostname myhost |
| 指定網(wǎng)絡(luò) | --network mynet |
| 連接多個網(wǎng)絡(luò) | --network network1 --network network2 |
| 臨時容器(退出自動刪除) | --rm |
總結(jié):
- 必需參數(shù):鏡像名、端口映射(服務(wù)類)、數(shù)據(jù)卷(持久化)
- 推薦參數(shù):環(huán)境變量、重啟策略、容器命名
- 可選參數(shù):CPU/內(nèi)存限制、網(wǎng)絡(luò)配置、調(diào)試模式
到此這篇關(guān)于Docker容器啟動的全方位方法匯總的文章就介紹到這了,更多相關(guān)Docker容器啟動內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker?hub在線編譯github代碼實現(xiàn)
本文主要介紹了docker?hub在線編譯github代碼實現(xiàn),包含創(chuàng)建倉庫并在線編譯項目,解決本地依賴?yán)∈栴},最終通過docker?push推送鏡像,感興趣的可以了解一下2025-05-05
docker安裝mariadb并在本地持久化數(shù)據(jù)方式
這篇文章主要介紹了docker安裝mariadb并數(shù)據(jù)持久化方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-06-06
docker-compose 部署 Apollo 自定義環(huán)境的詳細(xì)教程
本篇文章給大家介紹docker-compose 部署 Apollo 自定義環(huán)境的詳細(xì)教程,而其中Config Service提供配置的讀取、推送等功能,服務(wù)對象是Apollo客戶端,對docker部署Apollo環(huán)境相關(guān)知識感興趣的朋友一起看看吧2021-06-06

