services:
  db:
    image: docker.seafile.top/seafileltd/mariadb:10.11
    container_name: seafile-mysql
    ports:
      - 3306:3306
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=Qwerty123456  #改成自己的密码
      - MYSQL_LOG_CONSOLE=true
      - MARIADB_AUTO_UPGRADE=1
    volumes:
      - "/vol1/1000/Tools/Docker/seafile/mysql:/var/lib/mysql"  #改成自己的路径
    networks:
      - seafile-net
  memcached:
    image: docker.seafile.top/seafileltd/memcached:1.6.18
    container_name: seafile-memcached
    restart: always
    entrypoint: memcached -m 512
    networks:
      - seafile-net
  elasticsearch:
    image: docker.seafile.top/seafileltd/elasticsearch:8.6.2
    container_name: seafile-elasticsearch
    restart: always
    environment:
      - discovery.type=single-node
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms1g -Xmx1g"
      - "xpack.security.enabled=false"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 4g
    volumes:
      - "/vol1/1000/Tools/Docker/seafile/elasticsearch:/usr/share/elasticsearch/data"     #改成自己的路径
    networks:
      - seafile-net
  
  onlyoffice:
    image: docker.io/onlyoffice/documentserver
    container_name: onlyoffice
    ports:
      - 8889:80
    restart: always
    environment:
      - JWT_ENABLED=true
      - JWT_SECRET=Qwerty123456  #改成自己的密码
    volumes:
      - "/vol1/1000/Tools/Docker/seafile/onlyoffice/logs:/var/log/onlyoffice"    #改成自己的路径
      - "/vol1/1000/Tools/Docker/seafile/onlyoffice/fonts:/usr/share/fonts"     #改成自己的路径
      - "/vol1/1000/Tools/Docker/seafile/onlyoffice/data:/var/www/onlyoffice/Data"    #改成自己的路径
      - "/vol1/1000/Tools/Docker/seafile/onlyoffice/lib:/var/lib/onlyoffice"    #改成自己的路径
      - "/vol1/1000/Tools/Docker/seafile/onlyoffice/db:/var/lib/postgresql"    #改成自己的路径
    networks:
      - seafile-net
  
  seafile:
    image: docker.seafile.top/seafileltd/seafile-pro-mc:12.0.1-testing
    container_name: seafile
    ports:
      # 8080 for  login,这里我80端口用给了其他应用所以改成8080端口登录web
      - "8080:80"
      # 8888 for webdav
      - "8888:8080"
    restart: always
    volumes:
      - "/vol2/1000/seafileshare:/shared"    #改成自己想让同步的文件放置在哪的路径
    environment:
      - DB_HOST=db
      - DB_ROOT_PASSWD=Qwerty123456   #改成自己的密码,需要和最开始DB的密码保持一致,否则连接不到数据库
      - TIME_ZONE=Asia/Shanghai
      - SEAFILE_ADMIN_EMAIL=iqoo #改成自己的用户名
      - SEAFILE_ADMIN_PASSWORD=Qwerty123456   #改成自己的密码
      - SEAFILE_SERVER_HOSTNAME=172.16.181.199:8080   #改成自己的seafile内网登录地址
      - SEAFILE_SERVER_LETSENCRYPT=false
      - FORCE_HTTPS_IN_CONF=false
    depends_on:
      - db
      - memcached
      - elasticsearch
      - onlyoffice
    networks:
      - seafile-net
networks:
  seafile-net: