Docker--Docker Compose的使用

前言

  docker的使用可以快速的部署项目,不用考虑环境问题,但如果一次需要部署多个容器时,一个个的去部署还是很繁琐的,而使用docker compose就可以轻松高效的去部署多个容器了

系统:CentOS Linux release 7.6.1810

安装docker compose

  参考官网命令安装 https://docs.docker.com/compose/install/

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

  检查安装

docker-compose --version

创建docker-compose文件

  为了方便操作,将docker涉及到的文件全部放在了一个文件夹下

  

  在 /root/docker/compose 目录下创建 docker-compose.yml 文件,文件内容如下

version: '3'
services:
  mongodb:
     container_name: em.db
     image: docker.io/mongo
     ports:
       - "27017:27017"
     volumes:
       - ../mongo/db:/data/db

  web-em:
    container_name: em.web
    build: ../dotnet/EM/
    depends_on:
      - mongodb

  reverse-proxy:
    container_name: em.proxy
    image: docker.io/nginx
    depends_on:
      - web-em
    ports:
      - "80:80"
    volumes:
      - ../nginx/proxy.conf:/etc/nginx/conf.d

  services中每一项的名字为网络名,这里不需要link就可以在配置文件中代替ip地址,一个compose文件中启动的容器默认在一个网络中

  这里使用相对路径,便于后续移植到其他服务器上

  参数说明:

    container_name  容器名

    image  镜像,如果本地不存在,会默认去docker hub 上获取

扫描二维码关注公众号,回复: 6973441 查看本文章

    ports  端口映射

    volumes  文件挂载

    build  同build命令,根据dockerfile文件创建镜像

    depends_on  依赖,可以用来指定容器启动顺序,只有依赖项启动后,才会启动

执行docker compose

cd /root/docker/compose
docker-compose up -d

  首先进入刚刚创建的docker-compose.yml文件的目录,执行docker-compose命令,后台启动运行

  

  后续如果需要更新代码,命令加上 --build  会重新创建镜像并运行容器,依赖该容器的会重启

总结

  我们看到使用docker compose 之后,在新服务器上部署,只需要将文件复制过去,执行docker-compose.yml文件即可,非常高效

    

猜你喜欢

转载自www.cnblogs.com/sinianchangliu/p/11315543.html