Sonic云真机学习总结1 - docker-compose一键部署云真机环境

1、安装docker\docker-compose,参考:docker学习总结2

2、停止机子上的其他容器(主要是防止端口被占用)

3、修改以下文件两处 ip 地址,地址为你部署sonic的ip

官网:https://sonic-cloud.gitee.io/#/Home

docker-compose-sonic.yml

version: '3'
services:
  sonic-mysql:
    image: "mysql:5.7"
    hostname: sonic-mysql
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    environment:
      - MYSQL_ROOT_PASSWORD=Sonic!@#123
      - MYSQL_DATABASE=sonic
    volumes:
      - ./mysql/data:/var/lib/mysql
    ports:
      - "3307:3306"
    networks:
      - sonic-network
  sonic-server-simple:
    image: "sonicorg/sonic-server-simple:v1.3.1-release"
    container_name: sonic-server-simple
    environment:
      - MYSQL_HOST=sonic-mysql
      - MYSQL_PORT=3306
      - MYSQL_DATABASE=sonic
      - MYSQL_USERNAME=root
      - MYSQL_PASSWORD=Sonic!@#123
      # (1)修改这里的ip
      - SONIC_API_HOST=xxx.xxx.xxx.xxx
      - SONIC_API_PORT=8094
      - SONIC_NETTY_PORT=8095
      - SECRET_KEY=sonic
      - EXPIRE_DAY=14
      - CLIENT_HOST=http://localhost:3000
      - FILE_KEEP_DAY=60
      - RESULT_KEEP_DAY=60
      - FILE_CRON=0 0 12 * * ?
      - RESULT_CRON=0 0 12 * * ?
      - DAY_CRON=0 0 10 * * ?
      - WEEK_CRON=0 0 10 ? * Mon
    networks:
      - sonic-network
    depends_on:
      - sonic-mysql
    volumes:
      - files:/keepFiles/
      - files:/imageFiles/
      - files:/recordFiles/
      - files:/packageFiles/
      - files:/logs/
    ports:
      - "8094:8094"
      - "8095:8095"

  sonic-client-web:
    image: "sonicorg/sonic-client-web:v1.3.1-release"
    container_name: sonic-client-web
    environment:
      # (2)修改这里的ip
      - SONIC_API_HOST=XXX.XXX.XXX.XXX
      - SONIC_API_PORT=8094
    depends_on:
      - sonic-mysql
    networks:
      - sonic-network
    ports:
      - "3000:80"

volumes:
  files:

networks:
  sonic-network:
    driver: bridge

4、新建目录,将以上文件放入后,执行:

docker-compose -f docker-compose-sonic.yml up -d

如果没成功,在执行一次:

docker-compose -f docker-compose-sonic.yml up -d
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
使用SONIC_DOCKER_IMAGES变量来指定构建SONiC时所需的Docker镜像非常简单。下面是一个例子: 假设你需要在SONiC中使用Redis数据库,可以按照以下步骤进行操作: 1. 打开sonic-buildimage目录下的Makefile文件。 2. 找到以下行: ``` SONIC_DOCKER_IMAGES ?= $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-common:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-$(IMAGE_NAME_SUFFIX):$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-syncd:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-snmp:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-database:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-swss:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-fpm:$(DOCKER_TAG) ``` 3. 在这一行的末尾添加Redis镜像的名称和版本号,以空格分隔,例如: ``` SONIC_DOCKER_IMAGES ?= $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-common:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-$(IMAGE_NAME_SUFFIX):$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-syncd:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-snmp:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-database:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-swss:$(DOCKER_TAG) \ $(DOCKER_REGISTRY)/$(DOCKER_NS)/$(IMAGE_NAME_BASE)-fpm:$(DOCKER_TAG) \ redis:5.0.8 ``` 这将告诉构建系统在构建SONiC时使用Redis 5.0.8镜像。 4. 保存文件并退出。 5. 运行make命令以开始构建SONiC,例如: ``` make all ``` 在构建过程中,Redis镜像将被下载并用于构建SONiC镜像。完成构建后,你可以使用Docker命令来启动Redis容器。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿_焦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值