mall4cloud Docker & Self-Hosted Deployment

GitHub

️⭐️⭐️微服务商城系统 springcloud微服务商城 小程序商城

6,162 stars JavaScript JavaScript 43 files · ~17,064 tokens #java#mall#springboot4#springcloud#vue3
RAW Compose
1. Pull Image (DOCKERHUB) docker pull registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql
2. Docker Run (1-Click Launch) docker run -d --name mall4cloud -p 8180:8180 --restart always registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql:8.0.35
3. Podman Run podman run -d --name mall4cloud -p 8180:8180 --restart always registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql:8.0.35
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql:8.0.35
5. ORAS Pull (OCI Artifact) oras pull registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql:8.0.35
6. Compose Deployment docker compose up -d
doc/8-部署运维/2-中间件-docker-compose/docker-compose.yaml
Download .yml
version: "3.5"

services:
  mall4cloud-mysql:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/mysql:8.0.35
    container_name: mall4cloud-mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=80jpnH4.r5g
    network_mode: "host"
    expose:
      - 3306
    volumes:
      - ./mysql/data:/var/lib/mysql
      - ./mysql/conf.d:/etc/mysql/conf.d
      - ./mysql/initdb:/docker-entrypoint-initdb.d

  mall4cloud-minio:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/minio:RELEASE.2024-04-18T19-09-19Z
    container_name: mall4cloud-minio
    restart: always
    command: server /data --console-address ":9001"
    network_mode: "host"
    expose:
      - 9000
      - 9001
    volumes:
      - ./minio/data:/data
    environment:
      - MINIO_ROOT_USER=admin
      - MINIO_ROOT_PASSWORD=80jpnH4.r5g
      - MINIO_BROWSER_REDIRECT_URL=http://192.168.1.46:9001

  mall4cloud-redis:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/redis:7.0
    container_name: mall4cloud-redis
    restart: always
    network_mode: "host"
    command: redis-server --requirepass 80jpnH4.r5g
    expose:
      - 6379


  mall4cloud-nacos:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/nacos-server:v3.1.1
    container_name: mall4cloud-nacos
    restart: always
    depends_on:
      - mall4cloud-mysql
    network_mode: "host"
    expose:
      - 8848
      - 9848
      - 9849
      - 8080
    environment:
      - JVM_XMS=256m
      - JVM_XMX=256m
      - MODE=standalone
      - PREFER_HOST_MODE=hostname
      - SPRING_DATASOURCE_PLATFORM=mysql
      - MYSQL_SERVICE_HOST=192.168.1.46
      - MYSQL_SERVICE_DB_NAME=mall4cloud_nacos
      - MYSQL_SERVICE_USER=root
      - MYSQL_SERVICE_PASSWORD=80jpnH4.r5g
      - NACOS_AUTH_ENABLE=true
      - NACOS_AUTH_TOKEN=TWFsbDRqTWFsbDRjbG91ZE1hbGw0ak1hbGw0Y2xvdWRNYWxsNGpNYWxsNGNsb3Vk
      - NACOS_AUTH_IDENTITY_KEY=mall4jmall4jmall4jmall4jmall4jmall4jmall4jmall4j
      - NACOS_AUTH_IDENTITY_VALUE=mall4cloudmall4cloudmall4cloudmall4cloudmall4cloudmall4cloudmall4cloud
    volumes:
      - ./nacos/logs:/home/nacos/logs

  mall4cloud-seata:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/seata-server:2.6.0
    container_name: mall4cloud-seata
    restart: always
    network_mode: "host"
    expose:
      - 8091
    environment:
      - TZ
      - STORE_MODE=db
      - SEATA_IP=192.168.1.46
      - SEATA_PORT=8091
    volumes:
      - ./seata/application.yml:/seata-server/resources/application.yml

  mall4cloud-elasticsearch:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/elasticsearch:7.17.21
    container_name: mall4cloud-elasticsearch
    restart: always
    network_mode: "host"
    expose:
      - 9200
      - 9300
    environment:
      - discovery.type=single-node
      - ES_JAVA_OPTS=-Xms512m -Xmx512m
      - ELASTICSEARCH_USERNAME=elastic
      - ELASTIC_PASSWORD=80jpnH4.r5g
      - xpack.security.enabled=true
    volumes:
      - ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - ./elasticsearch/data:/usr/share/elasticsearch/data
      - ./elasticsearch/plugins:/usr/share/elasticsearch/plugins

  mall4cloud-canal:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/canal-server:v1.1.7
    container_name: mall4cloud-canal
    restart: always
    network_mode: "host"
    expose:
      - 11111
    volumes:
      - ./canal/conf/example:/home/admin/canal-server/conf/example
      - ./canal/conf/canal.properties:/home/admin/canal-server/conf/canal.properties
      - ./canal/logs:/home/admin/canal-server/logs


  mall4cloud-rocketmq-namesrv:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/rocketmq:5.2.0
    container_name: mall4cloud-rocketmq-namesrv
    restart: always
    network_mode: "host"
    expose:
      - 9876
    volumes:
      - ./rocketmq/namesrv/logs:/home/rocketmq/logs
      - ./rocketmq/namesrv/store:/home/rocketmq/store
    environment:
      JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128M"
    command: ["sh","mqnamesrv"]

  mall4cloud-rocketmq-broker:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/rocketmq:5.2.0
    container_name: mall4cloud-rocketmq-broker
    restart: always
    network_mode: "host"
    expose:
      - 10909
      - 10911
    volumes:
      - ./rocketmq/broker/logs:/home/rocketmq/logs
      - ./rocketmq/broker/store:/home/rocketmq/store
      - ./rocketmq/broker/conf/broker.conf:/etc/rocketmq/broker.conf
    environment:
      JAVA_OPT_EXT: "-Duser.home=/home/rocketmq -Xms512M -Xmx512M -Xmn128M -XX:-AssumeMP"
    command: ["sh","mqbroker","-c","/etc/rocketmq/broker.conf","-n","192.168.1.46:9876","autoCreateTopicEnable=true"]
    depends_on:
      - mall4cloud-rocketmq-namesrv


  mall4cloud-rocketmq-dashboard:
    image: registry.cn-hongkong.aliyuncs.com/mall4j-images/rocketmq-dashboard:1.0.1
    container_name: mall4cloud-rocketmq-dashboard
    restart: always
    ports:
      - 8180:8082
    environment:
      JAVA_OPTS: "-Drocketmq.namesrv.addr=192.168.1.46:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false"
    depends_on:
      - mall4cloud-rocketmq-namesrv