docker-compose常用命令

docker-compose常用命令

1、docker-compose up 启动服务

  • 常用命令选项:
    -f : --file File 指定compose文件,默认是docker-compose.yml
    -d: 在后台运行
  • 常用命令:
    docker-compose -f xxx.yaml up -d // 指定xxx.yaml文件,在后台启动该服务

2、docker-compose stop [SERVICE…] 停止正在运行的容器,可以通过docker-compose start再次启动

  • 常用命令:
    docker-compose -f xxx.yaml stop

3、docker-compose start [SERVICE…] 启动已经存在的服务容器

  • 常用命令:
    docker-compose -f xxx.yaml start

4、docker-compose down [options] 停止和删除容器、网络、卷、镜像

  • 常用命令:
    docker-compose -f xxx.yaml down

5、docker-compose restart [SERVICE…] 重启服务

  • 常用命令:
    docker-compose -f xxx.yaml restart

docker-compose up/down 和 restart 的区别

  问题的引出:工作中修改了yaml文件,执行restart命令,发现服务没有实现重启,遂去网上学习了一下,发现先down再up,和直接restart效果不一样。

区别体现:

  • 只要xxx.yaml文件(默认是docker-compose.yaml文件)有任何修改,一定要执行docker-compose up才会生效,执行docker-compose restart是不会生效的;
  • 如果是code发生变化,执行docker-compose restart是有效的。

参考来源:https://github.com/twtrubiks/docker-tutorial/commit/88924422e180248d1848dee38ee54998020173c1

### Docker Compose 常用命令及其用法 以下是 `docker-compose` 的一些常用命令以及它们的具体用法: #### 1. 启动服务 通过运行容器来启动定义的服务。如果不存在镜像,则会先构建镜像再启动。 ```bash docker-compose up ``` 此命令会在前台运行所有服务,并显示日志输出[^2]。可以通过 `-d` 参数让其以后台模式运行: ```bash docker-compose up -d ``` #### 2. 查看状态 查看当前正在运行的容器的状态。 ```bash docker-compose ps ``` 该命令能够展示每个服务对应的容器 ID、名称、状态以及其他相关信息[^1]。 #### 3. 停止服务 停止由 `up` 或者其他方式启动的服务。 ```bash docker-compose stop ``` 这将优雅地发送信号给容器中的进程,使其正常关闭。 #### 4. 强制终止服务 强制立即杀死并停止所有的服务。 ```bash docker-compose kill ``` 当某些情况下无法正常使用 `stop` 来结束时可以考虑使用这个方法。 #### 5. 删除已创建的容器 删除之前已经创建过的容器实例。 ```bash docker-compose rm ``` 注意,在执行前通常需要先调用 `down` 或者手动停止这些容器。 #### 6. 构建或者重新构建服务 根据配置文件中的设置重建所需的服务镜像。 ```bash docker-compose build ``` 也可以针对特定的一个或多个服务进行单独构建: ```bash docker-compose build web app ``` 这里假设存在名为 `web` 和 `app` 的两个不同服务。 #### 7. 重启服务 对指定的服务实施重启操作。 ```bash docker-compose restart ``` 还可以加上额外参数控制具体哪些服务被影响到,比如只重启某个叫作 `db` 的数据库服务: ```bash docker-compose restart db ``` 上述例子表明我们仅希望刷新与数据存储有关的部分而不干扰其余部分的工作流程[^3]。 #### 8. 下载依赖项(拉取最新镜像) 从远程仓库获取最新的基础镜像版本以便更新本地环境下的应用组件. ```bash docker-compose pull ``` 它适用于那些基于官方发布版或者其他第三方源所提供的预制包情况之下.[^1] --- ### 示例代码片段 下面提供了一个简单的 `docker-compose.yml` 文件示例用于演示如何组合以上提到的各种指令一起工作: ```yaml version: '3' services: web: image: nginx:latest ports: - "8080:80" redis: image: redis:alpine ``` 在这个场景下,我们可以这样操作: - **启动服务**:`docker-compose up -d` - **查看服务状态**:`docker-compose ps` - **停止服务**:`docker-compose stop` - **清理资源**:`docker-compose down --remove-orphans` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值