DockerCompose容器编排及其文档参考

什么是docker-compose

官方开源项目,是对docker容器的快速编排

docker-compose定位

定义和运行多个容器的应用

核心概念

服务(service):一个应用的容器,实际上可以包含若干运行相同镜像的容器实例
项目(project):由一组关联的应用容器组成的一个完整的业务单元,在docker-compose.yml文件中定义

安装(Linux)

# 下载可执行文件
curl -L https://github.com/docker/compose/releases/download/1.8.0/run.sh > /usr/local/bin/docker-compose
# 修改文件权限
chmod +x /usr/local/bin/docker-compose
# 查看版本,查看是否安装成功
docker-compose --version

第一个docker-compose程序

a、创建一个docker-compose.yml文件
touch docker-compose.yml
b、在文件中定义一个项目存在哪些服务
version: "2.0"
services:
  nginx:
    image: nginx:latest
    ports:
    - "8080:80"
c、运行一个docker-compose文件
docker-compose up

docker-compose 命令模板

version: "3.0"
services:
  nginx: #服务名称
    container_name: "nginx01" #指定容器名称
    image: nginx:latest #使用哪个镜像
    ports: #可以指定多个,用来完成主机与容器端口之间的映射
      - "8081:80"
    volumes: #可以指定多个,用来完成主机与容器之间的数据卷共享
      - /root/apps:/use/local/src #使用自定义路径映射
      - nginxData:/use/local/src #此处使用了数据卷自动映射,必须使用volumes进行申明
    networks: #代表使用哪个网桥(bridge)
      - hello #此处必须使用networks进行申明
    environment: #定义容器的环境变量 
      - MYSQL_ROOT_PASSWORD=root
    command: "redis-server --appendonly yes" #容器启动后执行的命令
    env_file: #用来将environment中的文件放入在配置文件中,相对于environment更安全,可以是相对路径或者绝对路径
      - ./mysql.env
    depends_on: #表示这个容器必须依赖哪些容器启动之后才能启动
      - mysql #服务名称

volumes:
  nginxData: #此处创建数据卷,相当于执行了docker voluem create nginxData,自动创建的数据卷名会加上你的项目名_,如果不需要,请加上下面的代码
    external: #使用自定义数据卷名称,使用自定义名称时,必须手动在docker中进行创建
      true    #确认

networks:
  hello:
    external: #使用自定义数据卷名称,使用自定义名称时,必须手动在docker中进行创建
      true    #确认,

docker-compose中的build指令

作用:用来将指定dockerfile打包成对应镜像,然后运行该镜像

docker-compose中的指令

作用:用来对整个docker-compose.yml对应的这个项目操作
常用指令:
# 查看帮助手册
docker-compose --help
#启动compose
docker-compose up
#后台启动compose
docker-compose up -d
#停止所有服务
docker-compose down

docker可视化工具(portainer)

安装:
	docker pull portainer/portainer
启动
	docker run -d -p 9000:9000 -p 8000:8000 --name portainer -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
访问,第一次访问需要创建用户名密码,然后选择local
	http://192.168.40.150:9000/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值