docker compose环境配置

#下载软件
因官网推荐下载地址速度太慢,所以要选择国内的源下载

curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose		#下载到/usr/local/bin下
chmod +x /usr/local/bin/docker-compose		#授权
docker-compose version		#查看版本信息

#启动项目

docker-compose up -d	#-d后台启动

#重新构建

docker-compose up --build

#docker-compose模板

version: "3.0"	#版本号

services:	#服务
  tomcat01:	#服务名
    container_name: tomcat01	#容器名,相当于--name
    image: tomcat:8.0-jre8	#使用的镜像
    ports:	#主机与容器的端口映射,相当于-p
      - "8080:8080"
    volumes:	#主机与容器中目录的数据卷共享,相当于-v
      - /root/apps:/usr/local/tomcat/webapps    #使用自定义路径
      - tomcatwebapps01:/usr/local/tomcat/webapps    #使用自建的目录,需要声明,路径在/var/lib/docker/volumes
    networks:	#当前服务使用哪个网络,相当于--network,需要声明,默认使用bridge
      - mynet
    
  mysql:
    build: .
    container_name: mysql
    ports:
      - "3306:3306"
    volumes:
      - mysqldata:/var/lib/mysql
      - mysqlconf:/etc/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=123456    #设定容器内变量的值,相当于-e
    networks:
      - mynet
    
  redis:
    image: redis:latest
    container_name: redis
    ports:
      - "6379:6379"
    volumes:
      - redisdata:/data
    networks:
      - mynet
    command: "redis-server --appendonly yes"    #容器启动时运行的命令,覆盖默认命令

volumes:	#声明上面服务所使用的自动创建的卷名
  tomcatwebapps01:	#声明指定的卷名,会自动创建该卷名,会在前面加入文件夹名
    external:		#使用自定义卷名,需要在启动前手动添加
      true  
  tomcatwebapps02:
  mysqldata:
  mysqlconf:
  redisdata:

networks:	#声明上面服务用到的网络
  mynet:	#声明服务指定的网络,会自动创建该网络,会在前面加入文件夹名
    external:	#使用自定义网络,需要在启动前手动添加
      true