Skip to content

Docker One-click Deploy ​

Deploy FastBee open-source edition with Docker Compose in one click and complete the environment setup in as little as 10 minutes.

Prerequisites ​

  • Linux / macOS / Windows (a Linux server is recommended)
  • Docker 20.10+
  • Docker Compose 2.0+
  • At least 2 CPU cores and 4GB RAM

One-click Install ​

bash
sudo wget -c https://hub.fastbee.cn/resource/install.sh && bash ./install.sh

Select the open-source edition when prompted; the script automatically pulls and starts all services.

Manual Deploy ​

1. Prepare directories ​

bash
mkdir -p /var/data/{mysql,redis,java,nginx,zlmedia}

2. docker-compose.yml ​

yaml
version: '2'
networks:
  network:
    ipam:
      driver: default
      config:
        - subnet: '177.7.0.0/16'

services:
  mysql:
    image: mysql:5.7
    container_name: mysql
    ports:
      - 3306:3306
    networks:
      network:
        ipv4_address: 177.7.0.11
    volumes:
      - /var/data/mysql/mysql:/var/lib/mysql
      - /var/data/mysql/mysql.cnf:/etc/mysql/conf.d/mysql.cnf
      - /var/data/mysql/initdb:/docker-entrypoint-initdb.d
    environment:
      MYSQL_DATABASE: fastbee
      MYSQL_ROOT_PASSWORD: iot@admin123
    command:
      ['mysqld','--character-set-server=utf8','--collation-server=utf8_unicode_ci',
       '--default-time-zone=+8:00','--lower-case-table-names=1']

  redis:
    image: redis:7.0.0
    container_name: redis
    ports:
      - 6379:6379
    networks:
      network:
        ipv4_address: 177.7.0.10
    volumes:
      - /var/data/redis:/usr/local/etc/redis
      - /var/data/redis/data:/data
    command: ['-- requirepass iot@admin123','-- appendonly yes']

  java:
    image: openjdk:8-jre
    container_name: java
    ports:
      - 8080:8080
      - 1883:1883
      - 8083:8083
      - 5061:5061/udp
    depends_on:
      - redis
      - mysql
      - zlmedia
    volumes:
      - /var/data/java/fastbee-admin.jar:/server.jar
      - /var/data/java/uploadPath:/uploadPath
      - /var/data/java/logs:/logs
    entrypoint: java -jar /server.jar

  nginx:
    image: nginx:stable
    container_name: nginx
    ports:
      - 80:80
      - 443:443
    depends_on:
      - java
    volumes:
      - /var/data/nginx/vue:/usr/share/nginx/html
      - /var/data/nginx/nginx.conf:/etc/nginx/nginx.conf

  zlmedia:
    image: zlmediakit/zlmediakit:master
    container_name: zlmedia
    ports:
      - 8082:80
      - 554:554
      - 1935:1935
    volumes:
      - /var/data/zlmedia/conf/config.ini:/opt/media/conf/config.ini

3. Start the services ​

bash
docker-compose up -d
docker-compose ps   # check container status

4. Import the database ​

Import springboot/sql/fastbee.sql into MySQL.

bash
docker exec -i mysql mysql -uroot -piot@admin123 fastbee < fastbee.sql

Access the System ​

After deployment, visit in a browser:

http://your-server-ip:80
  • Username: admin
  • Password: admin123

FAQ ​

Q: What if a port is already in use? Change the port mapping in docker-compose.yml, for example from - 8080:8080 to - 9090:8080.

Q: How do I view logs?

bash
docker logs -f java   # backend service logs
docker logs -f mysql  # database logs

Q: How do I upgrade? Replace /var/data/java/fastbee-admin.jar and restart the container:

bash
docker restart java

FastBee | fastbee.cn