docker-compose

前几天使用docker 部署了nexus等项目。今天尝试使用docker-compose部署一下项目。确实是很方便。做个记录

感谢一波博主:借鉴了少走弯路。hakusai22

先贴一个版本。虽然我还是不太清楚版本有什么关系。

[root@localhost ~]# docker version
Client:
 Version:         1.13.1
 API version:     1.26
 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64
 Go version:      go1.10.3
 Git commit:      7d71120/1.13.1
 Built:           Wed Mar  2 15:25:43 2022
 OS/Arch:         linux/amd64

Server:
 Version:         1.13.1
 API version:     1.26 (minimum version 1.12)
 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64
 Go version:      go1.10.3
 Git commit:      7d71120/1.13.1
 Built:           Wed Mar  2 15:25:43 2022
 OS/Arch:         linux/amd64
 Experimental:    false
[root@localhost ~]# docker-compose version
docker-compose version 1.27.4, build 40524192
docker-py version: 4.3.1
CPython version: 3.7.7
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

在此处分析以后得出结论。先贴一图:

Compatibility matrix

There are several versions of the Compose file format – 1, 2, 2.x, and 3.x

This table shows which Compose file versions support specific Docker releases.

Compose file formatDocker Engine release
Compose specification19.03.0+
3.819.03.0+
3.718.06.0+
3.618.02.0+
3.517.12.0+
3.417.09.0+
3.317.06.0+
3.217.04.0+
3.11.13.1+
3.01.13.0+
2.417.12.0+
2.317.06.0+
2.21.13.0+
2.11.12.0+
2.01.10.0+

从官网看出docker engine 1.31.1对应的是3.1。然后贴出docker-compose.yml

version: "3.1" #此处使用30,31都可以

services:
 tomcat:
  image: 549414168/tomcat:v1
  ports:
   - 8080:8080
 nexus:
  image: 549414168/nexus:v1
  ports:
   - 8081:8081

也就是官网对应的版本是指yml中的version和docker-compose的版本无关。它只是一个工具。

然后先测试一下docker-compose是否可用。

docker-compose up

可以看到两个镜像都启动了容器并且同时运行了起来。

接下来学习一些docker-compose命令

docker-compose config ##检查docker-compose.yml配置文件中的问题,没有问题就打印出来。

docker-compose up -d ##启动服务,d为后台启动

docker-compose down ##停止所有up命令启动的容器

docker-compose rm ##删除所有停止状态的服务容器

docker-compose logs -f [servicesName] ## 查看日志

docker-compose images ##查看项目中所包含的镜像

docker-compose port serviceName port ##查看容器端口映射的公共端口

docker-compose ps ##列出项目目前的所有容器

docker-compose run serviceName Shell ##在指定服务上运行一个命令

docker-compose scale service1=num service2=num ##启动指定数量的服务

docker-compose stop、start ##停止启动容器,但不删除

docker-compose top [servicesName] ##查看各个服务器容器内的进程

docker-compose pause、unpause ##暂停回复暂停状态的服务

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值