```
/usr/local/docker-compose -f /usr/local/docker-compose.yaml restart
```
[1.友情鏈接](https://www.cnblogs.com/minseo/p/11548177.html)
# [docker compose 常用命令](https://www.cnblogs.com/yyxianren/p/10894708.html)
**一、docker-compose命令格式**
~~~
docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
~~~
選項如下:
\-f,–file FILE ? 指定Compose模板文件,默認為docker-compose.yml,可以多次指定。
\-p,–project-name NAME指定項目名稱,默認將使用所在目錄名稱作為項目名。
\-x-network-driver ? 使用Docker的可拔插網絡后端特性(需要Docker 1.9+版本)
\-x-network-driver DRIVER指定網絡后端的驅動,默認為bridge(需要Docker 1.9+版本)
\-verbose ? 出更多調試信息
\-v,–version ? 打印版本并退出
### **二、docker-compose up**
~~~
docker-compose up [options] [--scale SERVICE=NUM...] [SERVICE...]
~~~
**docker-compose?up** 包含一下三個動作
1. docker-compose?config?檢查配置文件是否正確
2. docker-compose?pull?拉取鏡像
3. docker-compose?build?構建鏡像
選項包括:
\-d? ? ? ? ? ? ? ? ? ? ? ? ? ? ?在后臺運行服務容器
–no-color? ? ? ? ? ? ? ? ? 不使用顏色來區分不同的服務的控制輸出
–no-deps? ? ? ? ? ? ? ? ? 不啟動服務所鏈接的容器
–force-recreate? ? ? ? ?強制重新創建容器,不能與–no-recreate同時使用
–no-recreate? ? ? ? ? ? ?如果容器已經存在,則不重新創建,不能與–force-recreate同時使用
–no-build? ? ? ? ? ? ? ? ? 不自動構建缺失的服務鏡像
–build ? ? ? ? ? ? ? ? ? ? ? 在啟動容器前構建服務鏡像
–abort-on-container-exit? ? ? 停止所有容器,如果任何一個容器被停止,不能與-d同時使用
\-t, –timeout TIMEOUT? ? ? ? ? 停止容器時候的超時(默認為10秒)
–remove-orphans ? ? ? ? ? ? ? ? 刪除服務中沒有在compose文件中定義的容器
–scale SERVICE=NUM ? ? ? ? ?設置服務運行容器的個數,將覆蓋在compose中通過scale指定的參數
示例:
~~~
#啟動所有服務
docker-compose up
#在后臺所有啟動服務
docker-compose up -d
#-f 指定使用的Compose模板文件,默認為docker-compose.yml,可以多次指定。
docker-compose -f docker-compose.yml up -d
~~~
**三、docker-compose ps**
~~~
docker-compose ps [options] [SERVICE...]
~~~
示例:
~~~
#列出項目中目前的所有容器
docker-compose ps
~~~
**四、docker-compose stop**
~~~
docker-compose stop [options] [SERVICE...]
~~~
選項包括:
\-t, –timeout? ? ? ? ? ? TIMEOUT 停止容器時候的超時(默認為10秒)
示例
~~~
#停止正在運行的容器,可以通過docker-compose start 再次啟動
docker-compose stop
~~~
**五、docker-compose -h**
~~~
#查看幫助
docker-compose -h
~~~
**六、docker-compose down**
~~~
#停止和刪除容器、網絡、卷、鏡像。
docker-compose down [options]
~~~
選項包括:
–rmi type? ? ? ? ? ? ? ? ?刪除鏡像,類型必須是:all,刪除compose文件中定義的所有鏡像;local,刪除鏡像名為空的鏡像
\-v, –volumes? ? ? ? ? ? 刪除已經在compose文件中定義的和匿名的附在容器上的數據卷
–remove-orphans? ? ?刪除服務中沒有在compose中定義的容器
示例:
~~~
#停用移除所有容器以及網絡相關
docker-compose down
~~~
**七、docker-compose logs**
~~~
#查看服務容器的輸出。默認情況下,docker-compose將對不同的服務輸出使用不同的顏色來區分。可以通過–no-color來關閉顏色
docker-compose logs [options] [SERVICE...]
~~~
**八、docker-compose build**
~~~
#構建(重新構建)項目中的服務容器
docker-compose build [options] [--build-arg key=val...] [SERVICE...]
~~~
選項包括:
–compress? ? ? ? ? ? ?通過gzip壓縮構建上下環境
–force-rm? ? ? ? ? ? ? 刪除構建過程中的臨時容器
–no-cache? ? ? ? ? ? ?構建鏡像過程中不使用緩存
–pull? ? ? ? ? ? ? ? ? ? ? 始終嘗試通過拉取操作來獲取更新版本的鏡像
\-m, –memory MEM 為構建的容器設置內存大小
–build-arg key=val? 為服務設置build-time變量
服務容器一旦構建后,將會帶上一個標記名。可以隨時在項目目錄下運行docker-compose build來重新構建服務
**九、docker-compose pull**
~~~
#拉取服務依賴的鏡像
docker-compose pull [options] [SERVICE...]
~~~
選項包括:
–ignore-pull-failures? ?忽略拉取鏡像過程中的錯誤
–parallel? ? ? ? ? ? ? ? ? ? 多個鏡像同時拉取
–quiet? ? ? ? ? ? ? ? ? ? ? ?拉取鏡像過程中不打印進度信息
**十、docker-compose restart**
~~~
#重啟項目中的服務
docker-compose restart [options] [SERVICE...]
~~~
選項包括:
\-t, –timeout TIMEOUT? ? ? ? 指定重啟前停止容器的超時(默認為10秒)
**十一、docker-compose rm**
~~~
#刪除所有(停止狀態的)服務容器,推薦先執行docker-compose stop命令來停止容器
docker-compose rm [options] [SERVICE...]
~~~
選項包括:
–f, –force,強制直接刪除,包括非停止狀態的容器
\-v,刪除容器所掛載的數據卷
**十二、docker-compose start**
~~~
#啟動已經存在的服務容器
docker-compose start
~~~
**十三、docker-compose run**
~~~
#在指定服務上執行一個命令
docker-compose run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] SERVICE [COMMAND] [ARGS...]
~~~
示例
~~~
#在指定容器上執行一個ping命令
docker-compose run ubuntu ping www.baidu.com
~~~
**十四、docker-compose scale**
~~~
#設置指定服務運行的容器個數,通過service=num的參數來設置數量
docker-compose scale web=3 db=2
~~~
**十五、docker-compose pause**
~~~
#暫停一個服務容器
docker-compose pause [SERVICE...]
~~~
**十六、docker-compose kill**
~~~
#通過發送SIGKILL信號來強制停止服務容器
docker-compose kill [options] [SERVICE...]
~~~
示例
~~~
#支持通過-s參數來指定發送的信號,例如通過如下指令發送SIGINT信號:
docker-compose kill -s SIGINT
~~~
**十七、docker-compose config**
~~~
#驗證并查看compose文件配置
docker-compose config [options]
~~~
選項包括:
–resolve-image-digests? ? ? ?將鏡像標簽標記為摘要
\-q, –quiet? ? ? ? ? ? ? ? ? ? ? ? ? 只驗證配置,不輸出。 當配置正確時,不輸出任何內容,當文件配置錯誤,輸出錯誤信息
–services? ? ? ? ? ? ? ? ? ? ? ? ? ?打印服務名,一行一個
–volumes? ? ? ? ? ? ? ? ? ? ? ? ? ?打印數據卷名,一行一個
**十八、docker-compose create**
~~~
#為服務創建容器
docker-compose create [options] [SERVICE...]
~~~
選項包括:
–force-recreate:? ? ? ? ? ? ? 重新創建容器,即使配置和鏡像沒有改變,不兼容–no-recreate參數
–no-recreate:? ? ? ? ? ? ? ? ? 如果容器已經存在,不需要重新創建,不兼容–force-recreate參數
–no-build:? ? ? ? ? ? ? ? ? ? ? ?不創建鏡像,即使缺失
–build:? ? ? ? ? ? ? ? ? ? ? ? ? ? 創建容器前,生成鏡像
**十九、docker-compose exec**
~~~
docker-compose exec [options] SERVICE COMMAND [ARGS...]
~~~
選項包括:
\-d? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 分離模式,后臺運行命令。
–privileged? ? ? ? ? ? ? ? ? ? ? ? 獲取特權。
–user USER? ? ? ? ? ? ? ? ? ? ? 指定運行的用戶。
\-T? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 禁用分配TTY,默認docker-compose exec分配TTY。
–index=index? ? ? ? ? ? ? ? ? ? ?當一個服務擁有多個容器時,可通過該參數登陸到該服務下的任何服務,例如:docker-compose exec –index=1 web /bin/bash ,web服務中包含多個容器
**二十、docker-compose port**
~~~
#顯示某個容器端口所映射的公共端口
docker-compose port [options] SERVICE PRIVATE_PORT
~~~
選項包括:
–protocol=proto? ? ? ? ? ? ? ? 指定端口協議,TCP(默認值)或者UDP
–index=index? ? ? ? ? ? ? ? ? ? 如果同意服務存在多個容器,指定命令對象容器的序號(默認為1)
**二十一、docker-compose push**
~~~
#推送服務依的鏡像
docker-compose push [options] [SERVICE...]
~~~
選項包括:
–ignore-push-failures? ? ? 忽略推送鏡像過程中的錯誤
**二十二、docker-compose stop**
~~~
#顯示各個容器運行的進程情況
docker-compose stop [options] [SERVICE...]
~~~
**二十三、docker-compose unpause**
~~~
#恢復處于暫停狀態中的服務
docker-compose unpause [SERVICE...]
~~~
**二十四、docker-compose version**
~~~
#打印版本信息
docker-compose version
~~~
*****
常用技巧
```
格式: 宿主IP: dockerIP
ports:
-"3000"
-"8000:8000"
-"49100:22"
-"127.0.0.1:8001:8001"
```
```
db:
image: mariadb:latest
restart: always
ports:
- "3306:3306"
volumes:
- [直接使用宿主機的本地路徑]:/var/lib/mysql
```
*****
解決**重新啟動一個**容器的方案這很簡單:使用命令:
```
docker-compose restart redis
```
您可以設置等待停止的時間,然后再殺死容器(以秒為單位)
```
docker-compose restart -t 30 redis
```
- 空白目錄
- containerd
- php
- php常用函數
- 點語法
- 依賴注入
- 反射
- 迭代器和yield
- array_walk
- str_replace
- openssl_decrypt
- array_merge
- 閉包
- 深拷貝與淺拷貝
- 面向對象
- 魔術方法
- __invoke
- __isset 和 __unset
- __clone
- 常用知識點
- 訪問權限
- 抽象類
- 多態
- php框架
- tp
- tp3
- tp5
- job
- laravel
- 中間件
- laravel閉包
- symfony
- 小工具
- phpexcel
- xlswrite
- 設計模式
- 事件event
- 里氏替換原則
- 借鑒
- RESTful API
- 環境安裝
- 編譯安裝
- 編譯安裝后擴展補充
- php小記錄
- php-fpm
- 容器(Container)
- composer
- composer踩坑
- mysql
- 基礎知識
- 外鍵
- 索引
- 觸發器
- 定時器
- 分表
- 分區
- 連接查詢
- 事務
- 鎖機制
- 視圖
- 存儲過程
- 查詢
- 字符截取
- 批量修改表名(前綴)
- explain
- when_case
- pdo
- mysql優化
- 主從復制
- 權限分配
- 實用例子
- 查詢用戶
- 常見問題
- 5.7group by問題
- 遠程鏈接慢問題
- 查看進程
- 遠程訪問
- 常用小記
- mysqldump
- 備份還原
- 系統盤遷移數據盤
- 安裝sql
- 安裝MariaDB
- docker
- 安裝docker
- 配置centos開發環境
- docker運行程序
- rabbitmq
- 刪除無用鏡像
- 解決Centos firewalld導致的docker容器內無法訪問外網,無法訪問其他容器(host沒辦法解析)
- docker-compose
- docker-selenium
- ports 配置
- docker-compose-settings
- 安裝
- docker-compose常用配置
- docker常用命令
- build
- docker-hub加速
- docker-run
- Dockerfile
- apt-get update 無法升級
- 阿里打標簽
- 打包流程
- docker-network
- ufw 允許 docker 容器聯網
- 安裝containerd
- linux
- centos7
- 常用語法
- chmod
- chown
- find
- grep
- /etc/passwd
- chattr
- In軟連接
- 文件目錄大小
- xargs
- 管道用法
- top
- free
- 端口占用
- 壓縮解壓
- tar
- gzip
- zip
- 2>&1
- 環境變量
- 服務管理
- systemctl
- sed
- shell腳本
- time
- journal
- history
- linux-set
- linux-curl
- cp
- umask
- mkdir
- http狀態碼
- awk
- lsof
- crontab
- supervisor
- 常用命令匯總
- 用戶權限
- 普通用戶添加sudo權限
- sudo su
- 添加用戶
- 查看用戶信息
- 修改用戶信息
- 特殊權限
- 系統命令
- 常用小技巧
- vim小技巧
- 防火墻
- 常用規則
- iptables
- 磁盤清理
- 分區掛載
- linux-sh
- tmux
- 多命令執行
- 常用工具
- telnet
- ip轉發
- nohup
- watch
- dig
- 查看磁盤IO
- ssh
- 修改ssh端口
- ssh免密登錄
- 配置文件
- 公鑰分發
- xsync
- 國內鏡像站
- github加速
- 測網速
- 網卡
- 清理日志備份
- 配置sftp
- shell
- rpm
- 安全
- 安裝openssl
- 安裝openssh
- 禁用selinux和防火墻
- lanp環境安裝
- versionTool
- git
- git基本用法
- Gogs搭建
- git鉤子
- git的習慣配置
- phpStorm設置git bash
- git bash 設置代理
- gitignore 不起作用的解決辦法
- gitea搭建
- 同步主干到fork
- git修改地址
- svn
- svn基本操作
- svn 鉤子應用
- svn多版本操作
- Go語言
- Go語言基礎
- 安裝環境
- linux安裝
- window安裝
- 工具使用教程
- linux終端分屏Screen
- keepass 帳號密碼管理
- phpstorm
- 去掉window換行符
- php_cs
- 自定義快捷模塊
- phpstorm快捷鍵
- curl
- 正則
- 設計架構
- 設計模式的六大原則
- 計算機基礎
- TCP三次握手
- OSI7層
- http狀態返回碼
- 前端框架
- Vue
- Angular
- React
- node
- 服務端渲染(SSR)
- MVVM
- nuxt
- pm2
- js
- Promise
- es6
- 常用站點
- 工具類
- 學習類
- ps常用命令
- nginx
- 緩存
- 配置
- TCP
- 常用配置
- ng優先級
- vhost注意點
- nginx第一層驗證
- 轉發(跨域問題)
- 404
- nginx日志格式化
- 重啟腳本
- 寶塔禁用境外ip訪問
- ng統計
- ng編譯安裝
- 防盜鏈
- 技術相關了解
- ddos
- xss
- mysql防注入
- csrf攻擊
- 郵箱系統原理
- DNS
- python
- Selenium
- 微信
- 公眾號
- 公眾號配置
- 用戶授權
- 小程序
- 公有云
- 華為云
- JAVA
- springboot
- windows
- service
- WSL
- 目錄遷移
- wsl2 踩坑
- NoSql
- mongodb
- 安裝mongodb
- redis
- redis-windows
- redis-linux
- openstack
- ====副業====
- 擼茅臺
- 網絡
- 單位換算
- DB
- clickhouse
- mac