docker-compose初探

我一直直接使用docker命令来创建容器,没有怎么用过docker-compose。也不知道docker-compose和docker有什么区别,docker-compose有什么好处。

现在我约略认为,docker-compose是一个简化docker命令的工具,或者说,它是能将docker各种繁琐的命令集成到配置文件的工具,所谓compose也者,就是组合的意思吧。

比如,如果用docker,可能这样写:

docker run --env PREFER_HOST_MODE=hostname --env MODE=standalone --env NACOS_AUTH_ENABLE=true -p 8848:8848 nacos/nacos-server

但如果是docker-compose,会这样写(nacos.yml内容从其他项目抄过来,跟上面的docker命令对不上,只是表达docker-compose可以将繁复的选项写到yaml文件这么个意思):

docker-compose -f nacos.yml up -d

繁琐的命令都写在nacos.yml里:

version: '3.1'
services:
  nacos:
    image: jiehoom/nacos-server-dm:2.3.0-arm
    container_name: nacos
    env_file:
	  -	PREFER_HOST_MODE=hostname
	  -	MODE=standalone
	  -	NACOS_AUTH_ENABLE=true
	  -	NACOS_AUTH_USER_AGENT_AUTH_WHITE_ENABLE=false
	  -	NACOS_AUTH_TOKEN=R3owMS1MQU5EdG9vbDIwMTYtMjAyMS1ieS1jaGVuZGFxdQ==
	  -	NACOS_AUTH_IDENTITY_KEY=test
	  -	NACOS_AUTH_IDENTITY_VALUE=test1234
    volumes:
      - ../log/nacos/:/home/nacos/logs
      - ./nacos/custom.properties:/home/nacos/init.d/custom.properties
    ports:
      - "8848:8848"
      - "9848:9848"
    restart: always
    networks:
      - pig
      
networks:
  pig:
    external: true

posted on 2024-01-25 18:58  左直拳  阅读(0)  评论(0)    收藏  举报  来源

导航